Appendix E – AppStream 2.0 dimensioning
This appendix covers recommendations and performance related to the selection of EC2 streaming instance types for AppStream Fleets for XProtect Smart Client.
Recommended AWS EC2 instance types
As XProtect Smart Client is a compute and graphic intense application that runs best when utilizing hardware accelerated video decoding, there is only a limited set of EC2 instance types that are relevant for XProtect Smart Client hosting.
Based on extensive performance testing of the various EC2 streaming instance types, Milestone recommends the Graphics G4 family (stream.graphics.g4dn) only. With its native Nvidia Tesla T4 GPU support and reasonable pricing, it supports the Smart Client even in usage situations with views consisting of 50, or more, video streams. Please note that end-customers may need to request access to this EC2 streaming instance family via AWS Support.
Other EC2 streaming instance families are available for AppStream, but not recommended to use with the XProtect Smart Client:
-
General purpose, Compute optimized and, Memory optimized instances
As none of these instance families provides hardware accelerated video decoding, they deliver poor Smart Client performance with few supported simultaneous camera streams.
-
Graphics Design instances
Includes an AMD GPU infrastructure that is not compatible with the XProtect Smart Client.
-
Graphics Pro instances
Although equipped with NVIDIA Tesla M60 graphics cards, current version of XProtect Smart Client is not compatible with the provided Nvidia CUDA platform.
Performance results for EC2 streaming instances
Milestone has done extensive testing of the Smart Client in AppStream, using different user scenarios, with different number of simultaneously displayed camera streams, different resolutions and at different frame rates. These tests are summarized in Figure 20 below. In the testing, Milestone has benchmarked the performance of decoding and rendering 480p, 720p and 1080p H.264 streams at 15 fps and 25 fps respectively.
The smallest instance size in the stream.graphics.g4dn family delivers remarkably good performance, and should be sufficient in most common usage scenarios. With reference to the table the stream.graphics.g4dn.xlarge instance supports decoding and rendering of approximately 49 camera streams at 15 FPS, or 35 streams at 25 FPS. If users view more cameras in a single view, the larger streaming instance types can be considered.
Figure 20. Amazon AppStream 2.0 – Smart Client performance at different user scenarios and different EC2 streaming instances measured on a HD display, and hourly instance price US East (N. Virginia)