Choose AWS C6i or R6i Instances Featuring 3rd Gen Intel® Xeon® Scalable Processors for Up to 3.65 Times the NGINX Performance

NGINX

  • Compute-optimized instances: Up to 3.05x the NGINX connections per second on C6i instances vs. previous-gen C5 instances.

  • Memory-optimized instances: Up to 3.65x the NGINX connections per second on R6i instances vs. previous-gen R5 instances.

author-image

โดย

For Both Compute-Optimized and Memory-Optimized Instances, Instances with 3rd Gen Intel® Xeon® Scalable Processors with Crypto Acceleration Improved Performance

Organizations use SSL/TLS to encrypt consumer data as it travels across the internet. NGINX is an open-source web server application that organizations can use as a reverse proxy, load balancer, or mail proxy to keep data safe. Whether your organization runs NGINX on AWS compute-optimized or memory-optimized instances, choosing 3rd Gen Intel® Xeon® Scalable processors with Crypto Acceleration can improve performance.

Newer processors offer features that can accelerate NGINX performance: 3rd Gen Intel® Xeon® Scalable processors offer Intel® QuickAssist Technology (Intel® QAT) with Crypto Acceleration. Intel® QAT and Intel® QAT Engine (OpenSSL Engine) accelerate hardware and software based on vectorized instructions to speed cryptographic operations and allow more users to connect at a time. On both compute-optimized and memory-optimized instance types, C6i and R6i instances enabled by 3rd Gen Intel® Xeon® Scalable processors with Crypto Acceleration handled more NGINX connections per second than instances with previous-generation processors.

Get Better NGINX Performance on Compute-Optimized Instances

On compute-optimized C6i instances, using Intel® QAT Crypto Acceleration with 3rd Gen Intel® Xeon® Scalable processors boosted NGINX performance significantly over C5 instances without Crypto Acceleration (see Figure 1). At the largest size, the C6i instance increased connections per second by up to 3.05 times compared to the previous-generation C5 instance. Note that instead of 32 and 64 vCPUs, the C5 series had 36 and 72 vCPUs, respectively.

Figure 1. Relative NGINX performance, in connections per second, that C6i instances handled compared to previous-generation C5 instances. Higher is better.

Realize Improved NGINX Performance on Memory-Optimized Instances

Results were similar for memory-optimized instance types. As Figure 2 shows, using Crypto Acceleration on R6i instances featuring 3rd Gen Intel® Xeon® Scalable processors improved NGINX connections per second by up to 3.65 times compared to R5 instances with previous-generation processors.

Figure 2. Relative NGINX performance, in connections per second, that R6i instances handled compared to previous-generation R5 instances. Higher is better.

Conclusion

On both compute-optimized and memory-optimized AWS instances we tested, selecting newer instances featuring 3rd Gen Intel® Xeon® Scalable processors with Crypto Acceleration improved NGINX performance. Compared to instances with previous-generation processors, C6i and R6i instances increased the number of connections per second the web server could handle by up to 3.65 times. If your organization seeks to improve web server connection rates, AWS instances featuring 3rd Generation Intel® Xeon® Scalable processors with Crypto Acceleration can help.

Learn More

To begin running your NGINX workloads on compute-optimized AWS C6i instances with 3rd Gen Intel® Xeon® Scalable processors, visit https://aws.amazon.com/ec2/instance-types/c6i/. To select memory-optimized AWS R6i instances with 3rd Gen Intel® Xeon® Scalable processors, visit https://aws.amazon.com/ec2/instance-types/r6i/.

All tests by Intel on AWS/us-west-2b from 03/2022-04/2022. All tests: Ubuntu 20.04.4 LTS 5.13.0-1019-aws, v1.24.2.intel-13-g5ae1948f, gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0, ldd (Ubuntu GLIBC 2.31-0ubuntu9.7) 2.31, Client Server: c6i.32xlarge, Number of Clients:2, Run Iterations:3, Cipher: AES128-GCM-SHA256. All QAT configs: async mode Nginx w/ QATEngine. VM Instance details: c5.xlarge: CLX x86_64 CPUs, 4 vCPUs, 8GB RAM, 4 worker processes; c6i.xlarge: ICX x86_64 CPUs, 4 vCPUs, 8GB RAM, 4 worker processes; r5.xlarge: CLX x86_64 CPUs, 4 vCPUs, 32GB RAM, 4 worker processes; r6i.xlarge: ICX x86_64 CPUs, 4 vCPUs, 32GB RAM, 4 worker processes; c5.2xlarge: CLX x86_64 CPUs, 8 vCPUs, 16GB RAM, 8 worker processes; c6i.2xlarge: ICX x86_64 CPUs, 8 vCPUs, 16GB RAM, 8 worker processes; r5.2xlarge: CLX x86_64 CPUs, 8 vCPUs, 64GB RAM, 8 worker processes; r6i.2xlarge: ICX x86_64 CPUs, 8 vCPUs, 64GB RAM, 8 worker processes; c5.4xlarge: CLX x86_64 CPUs, 16 vCPUs, 32GB RAM, 16 worker processes; c6i.4xlarge: ICX x86_64 CPUs, 16 vCPUs, 32GB RAM, 16 worker processes; r5.4xlarge: CLX x86_64 CPUs, 16 vCPUs, 128GB RAM, 16 worker processes; r6i.4xlarge: ICX x86_64 CPUs, 16 vCPUs, 128GB RAM, 16 worker processes; c5.9xlarge: CLX x86_64 CPUs, 36 vCPUs, 72GB RAM, 32 worker processes; c6i.8xlarge: ICX x86_64 CPUs, 32 vCPUs, 64GB RAM, 32 worker processes; r5.8xlarge: CLX x86_64 CPUs, 32 vCPUs, 256GB RAM, 32 worker processes; r6i.8xlarge: ICX x86_64 CPUs, 32 vCPUs, 256GB RAM, 32 worker processes; c5.18xlarge: CLX x86_64 CPUs, 72 vCPUs, 144GB RAM, 64 worker processes; c6i.16xlarge: ICX x86_64 CPUs, 64 vCPUs, 128GB RAM, 64 worker processes; r5.16xlarge: CLX x86_64 CPUs, 32 vCPUs, 512GB RAM, 64 worker processes; r6i.16xlarge: ICX x86_64 CPUs, 64 vCPUs, 512GB RAM, 64 worker processes.