x264 on Google Cloud
Workload Brief
TAU T2A Virtual Machines Powered by Ampere Altra Processors
Ampere® Altra® processors are designed from the ground up to deliver exceptional performance for Cloud Native applications such as video encoding. With an innovative architecture that delivers high performance, linear scalability, and amazing energy efficiency, Ampere Altra allows workloads to run in a predictable manner with minimal variance under increasing loads. This enables industry leading performance/watt and a smaller carbon footprint for real-world workloads such as video encoding.
Google Cloud offers the cost-optimized Tau T2A VMs powered by Ampere Altra processors for scale-out Cloud Native workloads in multiple predetermined VM shapes – up to 48 vCPUS per VM, 4 GB of memory per vCPU, up to 32 Gbps networking bandwidth, and a wide range of network-attached storage options. These VMs are suitable for scale-out workloads such as web servers, containerized microservices, data-logging processing, media transcoding, and Java applications.
We use x264, which implements the H.264/MPEG-4 AVC standard that is the most widely used today. “vbench: a benchmark for video transcoding in the cloud, a benchmark for the emerging video-as-a-service workload,” available at http://arcade.cs.columbia.edu/vbench, is used to evaluate x264 performance. According to the paper, the fifteen input videos in vbench were algorithmically selected to represent a large commercial corpus of millions of videos based on resolution, framerate, and complexity.
The Google Cloud Tau T2A VMs powered by Ampere Altra processors offer great performance in a variety of video encoding workloads, including x264 running vbench. We use vbench's upload configuration to evaluate x264 performance which uses single pass transcoding without degrading the input video quality. This represents the encoding done for the initial upload to a video service and requires speed and video quality. We run vbench using the GNU parallel utility, running eight simultaneous jobs, each with eight threads each, to transcode vbench's 15 input videos using the system installed ffmpeg version.
Ampere Altra-based Google Cloud Tau T2A VMs outperform the x86 VMs on raw performance. For the vbench upload configuration, the T2A VM has 8% better performance than the N2 VM and 5% better compared to the N2D VM.
Comparing price-performance, the T2A VMs outperform the legacy x86 VMs even further. For the vbench upload configuration, Altra T2A VM has 36% better price-performance than the N2 VM and 15% better compared to the N2D VM.
N2 Standard 8 | N2D Standard 8 | T2A Standard 8 | |
---|---|---|---|
Number of vCPUs | 8 | 8 | 8 |
Hourly cost | $0.388472 | $0.337968 | $0.308 |
Operating System | Debian GNU/Linux 11 (bullseye) | Debian GNU/Linux 11 (bullseye) | Debian GNU/Linux 11 (bullseye) |
Kernel version | 5.10.0-17-cloud-amd64 | 5.10.0-17-cloud-amd64 | 5.18.0-0.deb11.3-cloud-arm64 |
ffmpeg version | 4.3.4-0+deb11u1 | 4.3.4-0+deb11u1 | 4.3.4-0+deb11u1 |
264 - core 160 r3011 cde9a93 | 264 - core 160 r3011 cde9a93 | 264 - core 160 r3011 cde9a93 | |
Memory | 32GB | 32GB | 32GB |
Disk | 10GB NVME | 10GB NVME | 10GB NVME |
gcc version | 10.2.1 | 10.2.1 | 10.2.1 |
We used the vbench upload configuration specified in "vbench: a benchmark for video transcoding in the cloud, a benchmark for the emerging video-as-a-service workload,” Andrea Lottarini, Alex Ramirez, Joel Coburn, Martha A. Kim Parthasarathy Ranganathan, Daniel Stodolsky, and Mark Wachsler (2018).
GNU parallel was used to process each of the vbench input files, using the following commands:
parallel -j8 /usr/bin/ffmpeg -threads 8 -y -i {} -c:v libx264 -preset medium -crf 18 {.}.out.mkv '</dev/null >&/dev/null ::: input/*.mkv
Video encoding is a popular workload in the cloud and given the myriad formats, target devices, and resolutions available today, it is a compute-intensive task. H.264 continues to be the most popular video codec on the market. In our tests, the Google Cloud Tau T2A VMs powered by the Ampere Altra Cloud Native processors delivered better performance and price-performance compared to legacy x86 VMs - up to 8% higher performance and 36% higher price-performance using the popular vbench video-as-a-service benchmark.
For more information about the Google Tau T2D Virtual Machines with Ampere Altra processors, visit the Google Cloud blog.
All data and information contained herein is for informational purposes only and Ampere reserves the right to change it without notice. This document may contain technical inaccuracies, omissions and typographical errors, and Ampere is under no obligation to update or correct this information. Ampere makes no representations or warranties of any kind, including but not limited to express or implied guarantees of noninfringement, merchantability, or fitness for a particular purpose, and assumes no liability of any kind. All information is provided “AS IS.” This document is not an offer or a binding commitment by Ampere. Use of the products contemplated herein requires the subsequent negotiation and execution of a definitive agreement or is subject to Ampere’s Terms and Conditions for the Sale of Goods.
System configurations, components, software versions, and testing environments that differ from those used in Ampere’s tests may result in different measurements than those obtained by Ampere.
©2022 Ampere Computing. All Rights Reserved. Ampere, Ampere Computing, Altra and the ‘A’ logo are all registered trademarks or trademarks of Ampere Computing. Arm is a registered trademark of Arm Limited (or its subsidiaries). All other product names used in this publication are for identification purposes only and may be trademarks of their respective companies.
Ampere Computing® / 4655 Great America Parkway, Suite 601 / Santa Clara, CA 95054 / amperecomputing.com