Graviton instances
There are many performance benefits of AWS
Graviton processors
One of the Amazon EC2 instances powered by AWS Graviton is the Hpc7g, which offers up to 20% higher performance compared to Hpc6a. The Hpc7g offers high-memory bandwidth and 200 Gbps of Elastic Fabric Adapter (EFA) network bandwidth, and can be used with AWS ParallelCluster. If higher network bandwidth is required for more loosely coupled applications, consider the C7gn instances which offer up to 200 Gbps of network bandwidth.
AWS Graviton has no simultaneous multithreading (SMT) or hyper threading. There is no sharing of execution units or interference between threads and sharing of L1 or L2 caches, as every vCPU is a physical core. Therefore, on AWS Graviton, well-optimized HPC applications that may have competed for resources on other instances, can push the CPUs to a higher threshold and limit extending execution time when gaps in execution stream cannot be filled.
Interpreted and bytecode-compiled languages such as Python, Java, Node.js and .NET Core on Linux may run on AWS Graviton without modification. Support for Arm architectures is also increasingly common in third-party numerical libraries, aiding the path to adoption. For certain bytecode-compiled language, extensions modules written in lower-level languages like C or C++ need to be compiled to arm64. Code changes will also be required for lower-level languages if they use to hardware specific features like single instruction, multiple data (SIMD) instructions.
Recommended flags to compile applications for AWS Graviton based instances can be found in the
AWS Graviton Technical Guide on Github