What is AWS Graviton?

Posted by

AWS Graviton processors are designed by AWS to deliver the best price performance for your cloud workloads running in Amazon EC2. We invite you for a session in which we will share on how you can how you can drive Lower Total Cost of Ownership (TCO) with Graviton powered instances:

AWS Graviton is a line of processors designed by Amazon Web Services (AWS) specifically for use in their cloud servers. These processors are based on ARM architecture, which is known for its power efficiency, making them particularly suitable for running cloud workloads.

There are several generations of AWS Graviton processors:

  1. AWS Graviton – The first generation, announced in 2018, designed to deliver cost savings for scale-out workloads.
  2. AWS Graviton2 – Launched in 2019, this second generation provides significant performance improvements over the first generation, offering better compute, memory, and networking performance. It is built using a 7nm manufacturing process.
  3. AWS Graviton3 – The latest generation, which AWS announced in late 2021, provides even greater performance improvements, including better energy efficiency and faster cryptography operations.

AWS Graviton processors power a variety of Amazon EC2 instances, providing customers options that balance compute, memory, and network resources for their applications. They are optimized for performance and cost, making them an attractive option for running everything from general-purpose applications to high-performance computing tasks.

Use Cases of Graviton

Components of AWS Graviton-based instances

How to migrate into AWS Gravity?

Graviton Developer Workshop (workshops.aws)

How AWS Gravitonx support 86_64 and arm64?

AWS Graviton processors are specifically designed to use the ARM architecture, which means they natively support the arm64 architecture (also known as AArch64). This architecture is used in all generations of Graviton processors.

However, AWS Graviton processors do not natively support the x86_64 architecture, which is the architecture used by most Intel and AMD processors. To facilitate compatibility with applications that are built for x86_64 architecture, users can use various strategies:

  1. Recompilation: The most straightforward way to run software on AWS Graviton processors is to recompile the source code for the ARM64 architecture. This approach generally provides the best performance and can often be done with minimal changes to the code.
  2. Multi-architecture Containers: For containerized applications, Docker and other container technologies support multi-architecture images. These allow the same container image to include versions of the application compiled for both x86_64 and arm64, with the appropriate version being used based on the underlying hardware.
  3. Emulation: While AWS does not provide built-in emulation for running x86_64 binaries on Graviton processors, software solutions like QEMU can be used to emulate an x86_64 environment on ARM64 hardware. This method can be useful for testing or running legacy applications but often comes with a significant performance penalty.
  4. Cross-Compilation: Developers can use cross-compilation tools on their x86_64 machines to compile applications for arm64. This approach is useful when direct access to ARM hardware is limited during the development phase.

Overall, while there is no native support for x86_64 on AWS Graviton processors, the growing ecosystem around ARM architecture and the availability of various tools and techniques make it increasingly feasible to migrate and optimize applications for ARM-based environments like those powered by AWS Graviton.

Lab & Excercise

Leave a Reply

Your email address will not be published. Required fields are marked *