aws-graviton-getting-started  by aws

Technical guide for AWS Graviton processors

Created 5 years ago
991 stars

Top 37.5% on SourcePulse

GitHubView on GitHub
Project Summary

This repository provides comprehensive technical guidance for developers and users transitioning to or optimizing workloads on AWS Graviton processors (Graviton2, Graviton3, Graviton4). It serves as a central resource for understanding Arm-based architecture benefits, migration strategies, and performance tuning across various programming languages and services.

How It Works

The guide details the architectural differences and feature sets across Graviton generations, emphasizing the advantages of Arm's Neoverse cores and instruction sets like SVE/SVE2. It offers practical advice on recompiling software, leveraging specific CPU flags, and utilizing runtime feature detection (HWCAPS) for optimal performance. The repository also highlights recent software updates and package versions that include performance improvements for Arm64.

Quick Start & Requirements

  • Installation: Primarily involves using AWS EC2 instances powered by Graviton processors. Specific software installations or recompilations may be required based on the guidance.
  • Prerequisites: Access to AWS EC2 instances, potentially specific OS versions (e.g., Amazon Linux 2, Ubuntu 20.04), and development tools.
  • Resources: Detailed instance specifications (cores, cache, DRAM) are provided for Graviton2, Graviton3, and Graviton4.
  • Links:

Highlighted Details

  • Detailed comparison tables for Graviton2, Graviton3, and Graviton4 processors, including core architecture, frequency, cache, and instruction set support (SVE, SVE2).
  • Language-specific optimization notes for C/C++, Go, Java, .NET, Node.js, PHP, Python, and Rust.
  • Guidance on running containerized workloads (Docker, Kubernetes, ECS, EKS) and serverless functions (AWS Lambda) on Graviton.
  • Specific advice for optimizing popular software like FFmpeg, HAProxy, MariaDB, MongoDB, MySQL, PostgreSQL, PyTorch, and Spark.

Maintenance & Community

  • The repository is maintained by AWS.
  • Feedback channel: ec2-arm-dev-feedback@amazon.com
  • Links to blog posts and case studies showcasing Graviton performance and adoption.

Licensing & Compatibility

  • The repository content is licensed under the Apache License 2.0.
  • Guidance is provided for using various software on Graviton, with specific version recommendations for optimal compatibility and performance.

Limitations & Caveats

  • Some older Linux distribution packages (e.g., pip, Postgres) may require manual upgrades or specific workarounds to leverage Graviton's capabilities.
  • Performance gains can be dependent on specific software versions and recompilation flags.
Health Check
Last Commit

2 weeks ago

Responsiveness

1 day

Pull Requests (30d)
0
Issues (30d)
0
Star History
9 stars in the last 30 days

Explore Similar Projects

Starred by François Chollet François Chollet(Author of Keras; Cofounder of Ndea, ARC Prize), Chaoyu Yang Chaoyu Yang(Founder of Bento), and
13 more.

neon by NervanaSystems

0%
4k
Deep learning framework (discontinued)
Created 11 years ago
Updated 4 years ago
Feedback? Help us improve.