Switch to Graviton

Move AWS Lambda workloads from x86 to Arm-based Graviton to capture better price–performance with minimal code changes.

Why it matters

  • AWS reports significant price-performance improvements for Graviton-powered Lambda functions versus x86; the exact gains depend heavily on your workload, so treat any percentage claims as directional and validate with your own benchmarks.1
  • Many interpreted-language functions only need a configuration flip and a clean rebuild, so you can usually evaluate Graviton quickly.

How to switch

  • Create a staging copy of the function and set its architecture to arm64 in whichever workflow you use (console, IaC, CI/CD, or container image build).
  • For ZIP deployments, ensure the package, layers, and extensions are rebuilt for arm64; for containers, use multi-arch images or *-arm64 Lambda base images (or another arm64-capable Linux base) and verify that your build pipeline actually produces an arm64 image.

What to double-check

  • Dependencies & layers: Rebuild native binaries, Lambda layers, and container images for arm64.1
  • Testing: Use sam build --use-container, sam local invoke, and the Lambda Power Tuning workflow to compare cost and latency before rollout; monitor with CloudWatch.1Cost estimation: Use the AWS Pricing Calculator to get a directional estimate of potential savings before you commit to a full migration.

When Graviton may not be a fit

  • You depend on x86-only native binaries or commercial libraries that do not ship arm64 builds.
  • Your container images or CI/CD stack are tightly coupled to x86-only tooling and cannot easily produce/test arm64 artifacts.
  • You’ve already profiled the function and confirmed that CPU/runtime is not the bottleneck (for example, it is dominated by slow downstream calls), so an architecture change is unlikely to move the needle.

Rollout playbook

  1. Clone the function, switch the clone to arm64, and deploy both.
  2. Validate parity with integration tests and metrics.
  3. Use versions + weighted aliases or CodeDeploy-safe deployments to shift production traffic gradually.
  4. Combine with right-sizing to stack savings.

Comparison of x86 vs. Graviton cost and performance

Graph generated by AWS Lambda Power Tuning2 showing Arm-based Graviton invocations delivering lower cost per run and faster completion time than the original x86 configuration.

Footnotes

  1. Selecting and configuring an instruction set architecture for your Lambda function 2 3

  2. AWS Lambda Power Tuning – GitHub repository