AMD Strix Halo system optimization#
2026-02-20
7 min read time
This document provides guidance for optimizing systems powered by AMD Ryzen AI MAX and MAX+ processors (codenamed Strix Halo). These APUs combine high-performance CPU cores with integrated RDNA 3.5 graphics and support up to 128GB of unified LPDDR5X-8000 memory, making them particularly well-suited for:
LLM development and inference systems
High-performance workstations
Virtualization hosts running multiple VMs
GPU compute and parallel processing
Gaming systems
Home servers and AI development platforms
The main purpose of this document is to help users utilize Strix Halo APUs to their full potential through proper system configuration.
Memory settings#
On Strix Halo GPUs (gfx1151) memory access is handled through GPU Virtual Memory (GPUVM), which provides per-process GPU virtual address spaces (VMIDs) rather than a separate, discrete VRAM pool.
As a result, memory on Strix Halo is mapped, not physically partitioned. The terms Graphics Address Remapping Table (GART) and GTT (Graphics Translation Table) describe limits on how much system memory can be mapped into GPU address spaces and who can use it, rather than distinct types of physical memory.
GART
Defines the amount of platform address space (system RAM or Memory-Mapped I/O) that can be mapped into the GPU virtual address space used by the kernel driver. On systems with physically shared CPU and GPU memory, such as Strix Halo, this mapped system memory effectively serves as VRAM for the GPU. GART is typically kept relatively small to limit GPU page-table size and is mainly used for driver-internal operations.
GTT
Defines the amount of system RAM that can be mapped into GPU virtual address spaces for user processes. This is the memory pool used by applications such as PyTorch and other AI/compute workloads. GTT allocations are dynamic and are not permanently reserved, allowing the operating system to reclaim memory when it is not actively used by the GPU. By default, the GTT limit is set to approximately 50% of total system RAM.
Note
On systems with physically shared CPU and GPU memory such as Strix Halo, several terms are often used interchangeably in firmware menus, documentations and community discussions:
VRAM
Carve-out
GART
Dedicated GPU memory
Firmware-reserved GPU memory
In this document, we will use VRAM from this point onward.
If desired, you can adjust how much memory is preferentially available to the GPU by:
Increasing the VRAM in BIOS, or
Reducing the configured GTT size so it is smaller than the reserved amount.
If the GTT size bigger than VRAM at that case the amdgpu driver for VRAM allocation using GTT (GTT-backed allocations) as you can see in torvalds/linux@759e764 commit.
Because memory is physically shared, there is no performance distinction similar to discrete GPUs where dedicated VRAM is significantly faster than system memory. Firmware may optionally reserve some memory exclusively for GPU use, but this provides little benefit for most workloads while permanently reducing available system memory.
For this reason, AI frameworks typically prefer GTT-backed allocations. GTT allows large, flexible mappings without permanently reserving memory, resulting in better overall system utilization on unified memory systems.
Operating system support#
The ROCm compatibility tables can be found at the following links:
However, for Strix Halo there are additional kernel version requirements, which are described in the following section.
Required kernel version#
Support for Strix Halo requires specific fixes in the Linux kernel that update internal limits in the AMD KFD driver to ensure correct queue creation and memory availability checks. Without these updates, GPU compute workloads may fail to initialize or behave unpredictably. The necessary Linux kernel patches have been merged upstream and are included in Linux kernel 6.18.4 and newer releases.
The following commits are required for Strix Halo support:
The table below reflects compatibility for AMD-released pre-built ROCm binaries only. Distributions that ship native ROCm packaging may provide different support levels.
β |
Unsupported combination |
β οΈ |
Unstable / experimental combination |
β |
Stable and supported combination |
ROCm Release |
Ubuntu 24.04 HWE |
Ubuntu 24.04 OEM (<= 6.14.0-1017) |
Ubuntu 24.04 OEM (>= 6.14.0-1018) |
Ubuntu 26.04 Generic |
Generic Distro < 6.18.4 |
Generic Distro >= 6.18.4 |
|---|---|---|---|---|---|---|
7.11.0 |
β οΈ |
β οΈ |
β |
β |
β οΈ |
β |
7.10.0 |
β οΈ |
β οΈ |
β |
β |
β οΈ |
β |
7.9.0 |
β οΈ |
β οΈ |
β |
β |
β οΈ |
β |
7.2.0 |
β |
β |
β |
β |
β |
β |
7.1.x |
β οΈ |
β οΈ |
β |
β |
β οΈ |
β |
6.4.x |
β οΈ |
β οΈ |
β |
β |
β οΈ |
β |
The following distributions include the required fixes in their native packaging, independent of AMD pre-built binaries:
Fedora 43
Ubuntu 26.04
Arch Linux