View a markdown version of this page

Performance and operational optimizations - Amazon Linux 2027
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Performance and operational optimizations

AL2027 Preview

AL2027 is currently available for preview. It is intended for evaluation and testing only and is not recommended for production workloads.

Amazon Linux 7.1 kernel
  • AL2027 uses the latest drivers for Elastic Network Adapter (ENA) and Elastic Fabric Adapter (EFA) devices. AL2027 focuses on performance and functionality backports for hardware in Amazon EC2 infrastructure.

  • All kernel build and runtime configurations include many of the same performance and operational optimizations of AL2023.

Base toolchain selection and default build flags
  • AL2027 packages are built with compiler optimizations (-O2) enabled by default.

  • AL2027 packages are built requiring x86-64-v3 for x86-64 systems (-march=x86-64-v3), and Graviton 2 or higher for aarch64 (-march=armv8.2-a+crypto -mtune=neoverse-n1). This enables the compiler to use AVX and AVX2 instructions for improved performance on x86-64 systems.

  • AL2027 packages are built with auto-vectorization enabled (-ftree-vectorize).

  • AL2027 packages are built with Link Time Optimization (LTO) enabled.

  • AL2027 uses GCC 16.1 as the default compiler, along with updated versions of Rust, Clang/LLVM 22, and Go.

  • On aarch64 (Graviton) instances, AL2027 enables transparent huge pages (THP) for malloc heap arenas by default, with glibc using 2 MB huge pages for heap arenas. For workloads with a large memory working set and frequent random memory accesses, this can improve performance. Workloads running in memory-constrained cgroups (such as containers with low memory limits) might experience increased memory consumption. To disable THP for malloc, set the environment variable GLIBC_TUNABLES=glibc.malloc.hugetlb=0.

  • Some workloads, such as certain database engines, perform better with transparent huge pages disabled system-wide. To disable THP at runtime, run echo never > /sys/kernel/mm/transparent_hugepage/enabled as root. To persist the setting across reboots, add transparent_hugepage=never to the kernel command line.

Package selection and versions
  • AL2027 uses DNF5 as its package manager. DNF5 is a C++ rewrite of DNF (version 4) that provides faster package operations, lower memory usage, and quicker repository metadata handling. For more information, see Package management tool.

  • Select backports to major system components include several performance improvements for running on Amazon EC2 infrastructure, especially Graviton instances.

  • AL2027 is integrated with several Amazon Web Services services and features. This includes the Amazon CLI and SSM Agent.

  • AL2027 uses Amazon Corretto as the Java Development Kit (JDK).

  • AL2027 provides database engines and programming language runtime updates to newer versions as they're released by upstream projects. Programming language runtimes with new versions are added when they're released.

Deployment in a cloud environment
  • The base AL2027 AMI and container images are frequently updated to support patching instance replacement.

  • Kernel updates are included in AL2027 AMI updates. This means that you don't need to use commands such as dnf upgrade and reboot to update your kernel.

  • In addition to the standard AL2027 AMI, a minimal AMI and container image is also available. Choose the minimal AMI to run an environment with the minimal number of packages that's required to run your service.

  • By default, AL2027 AMIs and containers are locked to a specific version of the package repositories. There's no auto-update when they're launched. This means that you're always in control of when you ingest any package update. You can always test in a beta/gamma environment before rolling out to production. If there's a problem, you can use the pre-validated rollback path. For more information, see Deterministic upgrades through versioned repositories on AL2027.