★ Reading this for free? Get 25 structured AI courses + per-chapter AI tutor — the first chapter of every course free, no card.Start free in 30 secondsOr own every course: $149 once
Hardware

AMD ROCm Setup for Local LLMs: Radeon, Strix Halo, MI300X

May 1, 2026
34 min read
Barsha Mohapatra

Want to go deeper than this article?

Free account unlocks the first chapter of all 25 courses — RAG, agents, MCP, voice AI, MLOps, real GitHub repos.

📚AI Learning Path

Got the hardware sorted? Now build on it. You know what to buy — the courses show you what to actually run, fine-tune, and ship on it. First chapter free, no card.

Start free
Or own it for life — Lifetime $149, pay once

TL;DR: Yes, you can run local LLMs on AMD GPUs. Install AMD's ROCm v7 driver on Ubuntu (Ollama's docs require it on Linux), then Ollama, llama.cpp or vLLM detect the GPU. A Radeon RX 7900 XTX (24GB, 960 GB/s) has a decode ceiling of ~195 tok/s on Llama 3.1 8B Q4_K_M (4.9GB), within about 5% of an RTX 4090's ~205 tok/s ceiling; both are bandwidth ceilings, not measurements, and real engines land well below them. For cards Ollama does not list, set HSA_OVERRIDE_GFX_VERSION.

Updated November 2, 2026: AMD's release history now lists ROCm 7.14.0 (July 15, 2026) and 7.14.1 (September 2, 2026), plus a new ROCm Core SDK line, 10.0.0 (August 26) and 10.1.0 (October 5, 2026), built with AMD's TheRock system. ROCm 7.2.0 shipped on January 21, 2026. Ollama's own docs ask for the "AMD ROCm v7 driver" on Linux, which the 7.2.4 quick-start commands below install. Every speed on this page is a labelled bandwidth ceiling (vendor memory bandwidth divided by the model file size), and prices are dated. If you just want the model list for a 7900 XTX, see best AI models for the RX 7900 XTX; if you are deciding whether to buy one, see the RX 7900 XTX local AI guide.

AMD ROCm has become a credible alternative to NVIDIA CUDA for local LLM inference. Token generation is limited by memory bandwidth, and on that measure AMD's 24GB card sits within a few percent of NVIDIA's. Strix Halo (Ryzen AI Max+ 395) puts 128GB of unified memory in a mini-PC, enough to hold a 70B model at Q4 or Q8. And the MI300X, with 192GB of HBM3 at 5.3 TB/s, has more memory and bandwidth than an H100 (80GB, 3.35 TB/s).

This guide covers installing ROCm, configuring your GPU, running Ollama / llama.cpp / vLLM / PyTorch on AMD, FlashAttention support, bandwidth ceilings versus CUDA cards, and the common gotchas, across Radeon RX 7000/9000-series, Strix Halo and CDNA 3 (MI300X / MI325X).

Table of Contents

  1. The State of ROCm in 2026
  2. Supported AMD Hardware
  3. ROCm vs CUDA: What's Actually Different
  4. Installation: Ubuntu, Fedora, WSL2
  5. Verifying Your Install
  6. Ollama on ROCm
  7. llama.cpp on ROCm
  8. vLLM on ROCm
  9. PyTorch on ROCm
  10. FlashAttention on AMD
  11. Quantization on ROCm
  12. Tuning the Radeon RX 7900 XTX
  13. Strix Halo / Ryzen AI Max+ 395
  14. MI300X / MI325X for Servers
  15. HSA_OVERRIDE_GFX_VERSION: Unofficial Cards
  16. Performance Benchmarks
  17. Troubleshooting
  18. FAQ

Reading articles is good. Building is better.

Free account = the first chapter of all 25 courses, with a per-chapter AI tutor. No card.

The State of ROCm in 2026

For two years AMD users were second-class citizens in local AI. That changed through 2024-2026. Today:

  • Ollama, llama.cpp, vLLM, PyTorch, JAX and Triton all ship ROCm builds; ROCm 10.1's release notes list PyTorch 2.14.0 and vLLM 0.29.0.
  • Ollama's supported list (its GPU docs) covers the RX 6800 through RX 9070 series, Radeon PRO W7000, Ryzen AI Max+ 395 and Instinct MI100-MI350X.
  • FlashAttention-2 has a ROCm implementation for CDNA 3 and RDNA 3/4.
  • Strix Halo / Ryzen AI Max+ put 128GB of unified memory on a desktop platform.
  • MI300X (192GB HBM3, 5.3 TB/s) has more memory and bandwidth than an H100 SXM (80GB, 3.35 TB/s) on AMD's and NVIDIA's spec sheets.
  • Radeon RX 7900 XTX has a decode ceiling within ~5% of an RTX 4090 (960 vs 1,008 GB/s). Its price has risen with the memory shortage: $1,820.99 new (Amazon, listed October 17, 2026) and $1,175 used (eBay) on videocardprices.com on November 2, 2026, against a $999 launch price.

What still lags: training tooling parity, FP8 on consumer cards (hardware on RDNA 4, absent on RDNA 3), some xformers paths, CUDA-only projects, and a few framework kernels.

For pure inference, ROCm is a real choice. For training large models, NVIDIA still has the deeper ecosystem.

ROCm versions in 2026

AMD's ROCm release history (rocm.docs.amd.com, read November 2, 2026):

VersionRelease date
7.2.0January 21, 2026
7.2.4May 29, 2026
7.14.0July 15, 2026
7.14.1September 2, 2026
10.0.0 (ROCm Core SDK)August 26, 2026
10.1.0 (ROCm Core SDK)October 5, 2026

What changed that matters for local LLMs:

  • The 7.x line. ROCm 7.2 brought official RDNA 4 (RX 9070 / 9070 XT, gfx1200/gfx1201) support and Windows builds alongside Linux; Ollama now requires a ROCm v7 driver.
  • TheRock. ROCm 10.1's release notes say that "since ROCm 7.14, ROCm uses TheRock as its build and release system." The 10.x Core SDK installs from a new repository (stable.repo.amd.com) with per-architecture packages such as amdrocm10.1-gfx1100, or as pip wheels.
  • Wider OS and device coverage. The 10.1 notes list Ubuntu 26.04.1, Windows 11 25H2 for Radeon and Ryzen, the RX 7900 series (gfx1100), RX 9070 series (gfx1201) and Strix Halo (gfx1151).

Practical guidance: for Ollama or llama.cpp on a Radeon card, install the ROCm v7 driver with AMD's quick-start below. Reach for the 10.x Core SDK when you build software against ROCm yourself (PyTorch, vLLM from source). Pin whichever version rocminfo reports clean for your card.


Supported AMD Hardware

Supported AMD hardware

Rows marked with a gfx target match Ollama's Linux support list and AMD's ROCm hardware tables.

GPU / APUArchitecturegfxVRAMBest For
Radeon RX 7900 XTXRDNA 3 (Navi 31)gfx110024 GBBest Radeon for LLMs
Radeon RX 7900 XTRDNA 3gfx110020 GBMid-range LLM
Radeon RX 7900 GRERDNA 3gfx110016 GB14B models
Radeon RX 9070 XTRDNA 4 (Navi 48)gfx120116 GBSupported since ROCm 7.2; FP8 hardware
Radeon Pro W7900RDNA 3gfx110048 GBWorkstation 70B
Radeon Pro W7800RDNA 3gfx110032 GBWorkstation 32B
Ryzen AI Max+ 395RDNA 3.5 + Zen 5gfx1151up to 128 GB unified70B in mini-PC
MI210CDNA 2gfx90a64 GB HBM2eServer inference
MI250 / 250XCDNA 2gfx90a128 GB HBM2eMulti-GPU server
MI300ACDNA 3 + Zen 4gfx940128 GB HBM3APU server
MI300XCDNA 3gfx942192 GB HBM370B at FP16 on one GPU
MI325XCDNA 3gfx942256 GB HBM3eLargest CDNA 3 memory

Supported by Ollama without an override, and cards that need one

Ollama's GPU docs (read November 2, 2026) list these LLVM targets as supported on Linux, so no override is needed:

GPUgfxOverride
RX 6800 / 6800 XT / 6900 XT / 6950 XTgfx1030none needed
RX 7800 XT / 7700 XT / 7700gfx1101none needed
RX 7600 / 7600 XTgfx1102none needed
RX 9070 / 9070 GRE / 9060 seriesgfx1200 / gfx1201none needed
Ryzen AI 9 HX 370-class (Strix Point)gfx1150none needed
Ryzen AI Max+ 395 (Strix Halo)gfx1151none needed
RX 6700 XT / 6750 XTgfx103110.3.0
RX 6600 / 6650 XTgfx103210.3.0
Ryzen 7040/8040 (780M iGPU)gfx110311.0.0 (closest supported target, gfx1100)

The override rows work for inference on Ollama / llama.cpp but are unsupported. See HSA_OVERRIDE_GFX_VERSION below. If your card predates this table entirely — Vega, Polaris — no override will save you and the practical route is a Vulkan backend instead of ROCm; the MLC-LLM cross-platform setup guide walks through that path.


ROCm vs CUDA: What's Actually Different

ConceptNVIDIA CUDAAMD ROCm
Compute APICUDA C++HIP (CUDA-source-compatible)
Drivernvidia-smirocm-smi
Math librarycuBLAShipBLAS / rocBLAS
DNN librarycuDNNMIOpen
Collective commsNCCLRCCL
ProfilerNsight Systems / Computerocprof / Omniperf
Compilernvcchipcc
Container runtimenvidia-container-toolkitrocm-container-runtime
Tensor core equivalentTensor CoresMatrix Cores (CDNA), WMMA (RDNA)
FP8Ada / Hopper / BlackwellMI300X (CDNA 3), RDNA 4 hardware; RDNA 3 lacks

The good news: HIP is mostly source-compatible with CUDA. hipify translates CUDA code automatically, so most frameworks ship both backends from the same codebase.

The bad news: kernels hand-tuned for NVIDIA Tensor Cores (FlashAttention-3, fused MoE kernels, etc.) need separate AMD implementations and tend to lag.


Own it instead of renting it

Run this on your own machine and stop paying every month

Pay once and keep it. No renewal, no per-token bill, and nothing you feed it ever leaves your hardware.

Installation: Ubuntu, Fedora, WSL2

Version note (November 2, 2026): Ollama's docs require the AMD ROCm v7 driver on Linux. The commands below are AMD's ROCm quick-start for Ubuntu 24.04 (ROCm 7.2.4), read on November 2, 2026. The newer ROCm Core SDK 10.1.0 installs from a different repository; see the box after this block.

# 1. Register AMD's repository (Ubuntu 24.04; use jammy instead of noble for 22.04)
wget https://repo.radeon.com/amdgpu-install/7.2.4/ubuntu/noble/amdgpu-install_7.2.4.70204-1_all.deb
sudo apt install ./amdgpu-install_7.2.4.70204-1_all.deb
sudo apt update

# 2. Kernel driver
sudo apt install "linux-headers-$(uname -r)" "linux-modules-extra-$(uname -r)"
sudo apt install amdgpu-dkms

# 3. ROCm and GPU access for your user
sudo apt install python3-setuptools python3-wheel
sudo usermod -a -G render,video $LOGNAME
sudo apt install rocm

# Reboot
sudo reboot

The older amdgpu-install --usecase=rocm route still exists on the 6.x and 7.x installer packages if you prefer it.

ROCm Core SDK 10.1 (TheRock). AMD's current install page (rocm.docs.amd.com/en/latest/install/rocm.html) uses a new apt repository at https://stable.repo.amd.com/rocm/core/packages/ubuntu2404/ with a keyring at /etc/apt/keyrings/amdrocm.gpg, then per-architecture packages such as sudo apt install amdrocm10.1-gfx1100 for an RX 7900-series card. The kernel driver comes separately from the amdgpu-install 31.60 package (https://repo.radeon.com/amdgpu-install/31.60/ubuntu/noble/amdgpu-install_31.60.316000-1_all.deb). Copy the repository block from AMD's page rather than retyping it.

Fedora 39+

sudo dnf install rocm-hip rocm-hip-devel rocm-comgr rocm-runtime
sudo usermod -aG render,video $USER
sudo reboot

WSL2 (Windows 10/11)

AMD's ROCm 10.1 release notes list Windows 11 25H2 as supported for Radeon and Ryzen, and Ollama runs natively on Windows on the RX 7600-7900 XTX with a ROCm v7 / HIP7-capable driver, so WSL2 is no longer the only option. The same release notes describe ROCm workloads under WSL2 as a technical preview. WSL2 uses the AMD Software: Adrenalin Edition driver on the Windows side; the commands below are the older 6.2 WSL usecase, which still installs.

# Inside WSL2 Ubuntu 22.04
wget https://repo.radeon.com/amdgpu-install/6.2/ubuntu/jammy/amdgpu-install_6.2.60200-1_all.deb
sudo apt install ./amdgpu-install*.deb
sudo amdgpu-install -y --usecase=wsl,rocm --no-dkms

Critical: --no-dkms because WSL uses the Windows driver. Skip the Linux kernel module install.

Docker

docker run -it --rm \
    --device /dev/kfd --device /dev/dri \
    --group-add video --group-add render \
    --security-opt seccomp=unconfined \
    rocm/dev-ubuntu-22.04:6.2 bash

The /dev/kfd (Kernel Fusion Driver) and /dev/dri devices are how ROCm reaches the GPU.


Verifying Your Install

# Should list your GPU
rocminfo | grep -A 5 "Agent"

# GPU utilization, temp, power
rocm-smi

# Detailed
rocm-smi --showallinfo

Expected output for a Radeon RX 7900 XTX:

Agent 2
*******
  Name: gfx1100
  Marketing Name: Radeon RX 7900 XTX
  Vendor Name: AMD
  Feature: KERNEL_DISPATCH
  ...

If you see only gfx000 or no agents, your driver did not load — check dmesg | grep amdgpu.


Ollama on ROCm

Ollama ships ROCm libraries and auto-detects supported GPUs.

curl -fsSL https://ollama.com/install.sh | sh

The installer prints the detected backend. Supported cards (RX 6800 through RX 9070, Strix Halo) need nothing else. For a card outside Ollama's list:

# RX 6700 XT / 6750 XT (gfx1031) or RX 6600-series (gfx1032)
HSA_OVERRIDE_GFX_VERSION=10.3.0 ollama serve

# Set persistently in systemd
sudo mkdir -p /etc/systemd/system/ollama.service.d
sudo tee /etc/systemd/system/ollama.service.d/override.conf <<EOF
[Service]
Environment="HSA_OVERRIDE_GFX_VERSION=10.3.0"
EOF
sudo systemctl daemon-reload
sudo systemctl restart ollama

Verify GPU is being used:

ollama run llama3.1:8b "hi"
# In another terminal:
rocm-smi
# Should show >0% GPU utilization during inference
ollama ps
# PROCESSOR should read 100% GPU

llama.cpp on ROCm

git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp

# Build with HIP backend
HIPCXX="$(hipconfig -l)/clang" \
HIP_PATH="$(hipconfig -R)" \
cmake -B build \
    -DGGML_HIP=ON \
    -DAMDGPU_TARGETS=gfx1100 \
    -DCMAKE_BUILD_TYPE=Release
cmake --build build -j

./build/bin/llama-cli -m model.gguf -ngl 999 -fa

AMDGPU_TARGETS should match your GPU's gfx version. For multiple GPUs, use gfx1100;gfx1101.

llama.cpp Vulkan (alternative)

For unsupported AMD GPUs, the Vulkan backend works on anything with Vulkan 1.2:

cmake -B build-vk -DGGML_VULKAN=ON
cmake --build build-vk -j

Vulkan is often a little slower than HIP/ROCm on cards ROCm supports, but it works on RX 5000-series, Intel Arc, and many integrated GPUs; benchmark both on your card with llama-bench. See our Intel Arc A770 guide for similar patterns.


vLLM on ROCm

docker pull rocm/vllm:latest

docker run --device /dev/kfd --device /dev/dri \
    --group-add video --group-add render \
    --security-opt seccomp=unconfined \
    --shm-size 16G \
    -p 8000:8000 \
    -v ~/.cache/huggingface:/root/.cache/huggingface \
    rocm/vllm:latest \
    vllm serve meta-llama/Llama-3.1-8B-Instruct \
    --max-model-len 16384

For supported AWQ quantization on RDNA 3:

vllm serve casperhansen/llama-3.1-8b-instruct-awq \
    --quantization awq \
    --max-model-len 16384

FP8 weights work on MI300X/MI325X but not on RDNA 3. INT8 (W8A8) works on both.

For full vLLM tuning, see our vLLM Complete Setup Guide — most flags are identical between CUDA and ROCm.


PyTorch on ROCm

# Stable wheel for ROCm 6.2
pip install torch torchvision --index-url https://download.pytorch.org/whl/rocm6.2

# Verify
python -c "import torch; print(torch.cuda.is_available(), torch.cuda.get_device_name(0))"

torch.cuda.is_available() returns True even on AMD because the HIP runtime maps to the CUDA API. torch.version.hip returns the ROCm version.

Hugging Face Transformers

from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

model = AutoModelForCausalLM.from_pretrained(
    "meta-llama/Llama-3.1-8B-Instruct",
    torch_dtype=torch.bfloat16,
    device_map="auto",
)

Most Hugging Face models work unchanged. Exceptions: anything that imports xformers (use attn_implementation="sdpa" instead) or bitsandbytes (use AWQ / GPTQ instead, or the bitsandbytes-rocm fork).


FlashAttention on AMD

RDNA 3 (RX 7900-series)

git clone https://github.com/ROCm/flash-attention
cd flash-attention
GPU_ARCHS="gfx1100" python setup.py install

This is AMD's fork; upstream FlashAttention-2 also has CK (Composable Kernel) support. Check the fork's README for which RDNA targets it currently builds for.

CDNA 3 (MI300X)

pip install flash-attn --no-build-isolation

Upstream FlashAttention-2 supports MI300X via CK kernels in v2.5+.

Use in llama.cpp / vLLM / PyTorch

  • llama.cpp: -fa flag (auto-detected)
  • vLLM: auto-detected
  • PyTorch: torch.nn.functional.scaled_dot_product_attention automatically uses FlashAttention when shapes are favorable

Performance impact

WorkloadRX 7900 XTX (no FA)RX 7900 XTX (FA2)What changes
Llama 3.1 8B, 8K ctxnot measurednot measuredSmall effect on decode; prompt processing is faster
Llama 3.1 8B, 16K ctxnot measurednot measuredAttention memory drops, so more context fits beside the weights
Llama 3.1 8B, 32K ctxnot measurednot measuredLong contexts that would run out of VRAM can fit

We have not measured FlashAttention on a 7900 XTX, so this table gives the mechanism rather than numbers. Decode speed is capped by memory bandwidth either way (~195 tok/s ceiling for the 4.9GB Llama 3.1 8B Q4_K_M at 960 GB/s); FlashAttention mostly cuts attention memory and speeds up long prompts. Measure your own card with llama-bench -fa 0,1.

Same pattern as NVIDIA: FlashAttention matters most at long context.


Quantization on ROCm

FormatRDNA 3 (RX 7900)RDNA 4 (RX 9070)CDNA 3 (MI300X)
FP16 / BF16✅✅✅
FP8❌⚠️ HW yes, SW WIP (Navi 48)✅ (E4M3, E5M2)
INT8 (W8A8)✅✅✅
AWQ-INT4✅✅✅
GPTQ-INT4✅✅✅
GGUF Q4_K_M / Q5_K_M✅ (llama.cpp)✅✅

For RDNA 3, AWQ-INT4 with vLLM or Q5_K_M / Q4_K_M with llama.cpp are the practical defaults. For MI300X, FP8 + AWQ-INT4 + INT8 W8A8 all work.

RDNA 4 FP8 caveat: the RX 9070 / 9070 XT (gfx1201) has native FP8 hardware, but framework support for FP8 kernels on consumer RDNA 4 has trailed the MI300X path. Check your vLLM version's ROCm notes before relying on it. The most reliable RX 9070 XT inference path is llama.cpp / Ollama (HIP or Vulkan) with GGUF Q4_K_M / Q5_K_M.

See AWQ vs GPTQ vs GGUF for the underlying theory.


Tuning the Radeon RX 7900 XTX

Power and thermals

# Cap board power at 290W (AMD lists 355W typical board power)
# Decode is bandwidth-bound, so a moderate cap often costs little speed; measure it
sudo rocm-smi --setpoweroverdrive 290

# Lock GPU clock for predictable latency
sudo rocm-smi --setperflevel high

# Fan curve
sudo rocm-smi --setfan 70%

llama.cpp recipe

./build/bin/llama-server \
    -m llama-3.1-8b-instruct-q5_k_m.gguf \
    -ngl 999 \
    -c 16384 \
    -fa \
    --cache-type-k q8_0 --cache-type-v q8_0 \
    -t 8 \
    --host 0.0.0.0 --port 8080

vLLM recipe

vllm serve casperhansen/llama-3.1-8b-instruct-awq \
    --quantization awq \
    --max-model-len 16384 \
    --gpu-memory-utilization 0.92 \
    --enable-prefix-caching \
    --enable-chunked-prefill \
    --max-num-batched-tokens 8192

Multi-GPU 7900 XTX

# llama.cpp tensor split for 2x 7900 XTX
./llama-cli -m 70b-q4.gguf -ngl 999 --tensor-split 24,24

# vLLM TP=2
vllm serve <70b-awq-model> --tensor-parallel-size 2 --quantization awq

7900 XTX does not support NVLink/Infinity Fabric Link, so multi-GPU is PCIe-only (PCIe 4.0 x16 is 32 GB/s per direction on paper). With llama.cpp's default layer split, the cards take turns, so the single-stream ceiling for a 70B Q4_K_M (42.5GB) stays at one card's bandwidth: ~23 tok/s ceiling (960 / 42.5). Tensor parallelism in vLLM can do better, but PCIe traffic limits the gain; measure it on your board.


Strix Halo / Ryzen AI Max+ 395

The most interesting AMD platform of 2025-2026 for local AI.

Hardware

  • CPU: Zen 5, 16 cores / 32 threads, up to 5.1 GHz boost
  • GPU: RDNA 3.5, 40 CUs, gfx1151 — marketed as the Radeon 8060S iGPU
  • Memory: Up to 128 GB LPDDR5X-8000 over a 256-bit bus, ~256 GB/s theoretical; up to 96 GB assignable to graphics via AMD Variable Graphics Memory (more on Linux)
  • NPU: XDNA 2, 50 TOPS per AMD (separate accelerator)
  • Power: 55-120W configurable
  • Form factor: Mini-PC (Framework Desktop, Asus, HP, GMKtec) and laptops

For a full platform deep-dive (model fits, BIOS VRAM allocation and buying advice) see our dedicated Ryzen AI Max+ 395 / Strix Halo guide.

Why it matters

128 GB of unified memory holds models no consumer NVIDIA card can: Llama 3.1 70B at Q4_K_M (42.5GB in Ollama) or Q8_0 (75GB) fits with room for context. A 70B at FP16 (141GB) does not fit. The catch is bandwidth: at ~256 GB/s, a dense 70B has a low decode ceiling, so the platform is at its best with MoE models that read few active parameters per token, such as gpt-oss:120b (65GB, 5.1B active). On November 2, 2026, 128GB Strix Halo systems listed at $3,919 (Minisforum MS-S1 Max) and $4,349 (Beelink) on their vendor stores, with the Framework Desktop out of stock. The closest alternative is a high-memory Mac; compare them in our DGX Spark vs Strix Halo vs Mac Studio guide.

Setup

# No override needed: Ollama's docs list the Ryzen AI Max+ 395 (gfx1151) as supported
# Ryzen APUs on Ubuntu 24.04.4+ use the inbox kernel driver (AMD install docs)

# ROCm user-space for building other software (ROCm Core SDK 10.1 package for gfx1151)
sudo apt install amdrocm10.1-gfx1151   # after adding AMD's stable.repo.amd.com repository

# Reserve memory for the iGPU in BIOS (UMA / VGM setting)
# Windows allows up to 96GB; Linux can map more through GTT

Performance (Llama 3.1 70B)

Bandwidth ceilings at ~256 GB/s, using the file sizes Ollama lists for each llama3.1:70b tag:

Quanttok/sNotes
BF16 / FP16 (141GB)does not fitLarger than 128GB of unified memory
Q8_0 (75GB)~3 tok/s ceilingFits, with room for context
Q5_K_M (50GB)~5 tok/s ceilingGood balance of quality and size
Q4_K_M (42.5GB)~6 tok/s ceilingSmallest common build
AWQ-INT4 (vLLM)~6 tok/s ceilingSimilar ~4-bit size; vLLM on gfx1151 is newer territory

These are upper bounds (bandwidth / file size), not measurements. For comparison, 2x RTX 4090 with a layer split has a ~24 tok/s ceiling on the same Q4_K_M file (1,008 GB/s / 42.5GB) at much higher cost and power. Strix Halo's case is capacity per dollar and per watt, not speed on dense 70B models.

Caveats

  • LPDDR5X bandwidth (~256 GB/s) is much lower than a 24GB discrete card (936-1,008 GB/s), so on models that fit in 24 GB the decode ceiling is roughly a quarter of a discrete GPU's.
  • GPU and CPU share the memory bus — heavy CPU workloads steal bandwidth from inference.
  • Long prompt prefill is slower than on discrete GPUs because the 40-CU iGPU has far less compute.

MI300X / MI325X for Servers

Specs

GPUVRAMBandwidthCompute (FP16/BF16)Compute (FP8)
MI300X192 GB HBM35.3 TB/s1.3 PFLOPS2.6 PFLOPS
MI325X256 GB HBM3e6.0 TB/s1.3 PFLOPS2.6 PFLOPS
H100 SXM80 GB HBM33.35 TB/s0.99 PFLOPS1.98 PFLOPS
H200 SXM141 GB HBM3e4.8 TB/s0.99 PFLOPS1.98 PFLOPS
B200 SXM180-192 GB HBM3e8.0 TB/s~2.25 PFLOPS4.5 PFLOPS

Vendor spec sheets (AMD Instinct and NVIDIA data-center pages), dense figures without sparsity.

Why MI300X wins on certain LLM workloads

LLM inference is memory-bandwidth-bound for decode and capacity-bound for long-context KV-cache. MI300X's 192 GB at 5.3 TB/s exceeds an H100's 80 GB at 3.35 TB/s on both axes. Where that shows up:

  • Fewer GPUs per model. Llama 3.1 70B at FP16 (~141GB of weights) fits on one MI300X; on H100s it needs at least two. Llama 3.1 405B at FP8 (~405GB of weights) needs three or more MI300X versus six or more H100s, and is usually served on an 8-GPU node either way.
  • Long-context (128K) inference — MI300X holds the KV cache without offload at large batch sizes.
  • Multi-tenant servers — more concurrent requests fit per GPU.

vLLM on MI300X

docker run --device=/dev/kfd --device=/dev/dri \
    --security-opt seccomp=unconfined --shm-size 32G \
    --network=host \
    rocm/vllm:latest \
    vllm serve meta-llama/Llama-3.1-70B-Instruct \
    --quantization fp8 \
    --kv-cache-dtype fp8_e4m3 \
    --tensor-parallel-size 1 \
    --max-model-len 65536 \
    --gpu-memory-utilization 0.93 \
    --enable-prefix-caching

For 405B-class models on an 8x MI300X node, use --tensor-parallel-size 8 and ensure RCCL is configured:

export NCCL_DEBUG=WARN     # RCCL respects NCCL_* vars
export RCCL_MSCCL_ENABLE=1 # MSCCL collective optimizations

HSA_OVERRIDE_GFX_VERSION: Unofficial Cards

Some Radeon cards outside ROCm's list work by reporting a nearby supported gfx version. ROCm ships kernels for officially-supported gfx versions; unsupported cards run those kernels by claiming a compatible architecture.

Your GPUOverride Value
RX 6700 XT, 6750 XT (gfx1031)10.3.0
RX 6600, 6600 XT, 6650 XT (gfx1032)10.3.0
Ryzen 7040/8040 (780M iGPU, gfx1103)11.0.0

No override is needed for the RX 6800/6900/6950 XT, RX 7600-7900, RX 9060/9070, Strix Point or Strix Halo: Ollama's GPU docs list their targets as supported on Linux.

Set globally:

echo 'export HSA_OVERRIDE_GFX_VERSION=10.3.0' >> ~/.bashrc

Or per-application via systemd override (see Ollama section).

Risks: unsupported configurations can crash, hang, or silently produce wrong results on edge-case operations. For inference of standard Llama / Mistral / Qwen models the failure modes are usually clean (crashes, not silent wrong outputs). Do not use HSA override for production.


Performance Benchmarks

We do not publish measured tok/s for these cards. Each figure below is a bandwidth ceiling: the vendor's published memory bandwidth divided by the file size Ollama lists for the model (Llama 3.1 8B Q4_K_M = 4.9GB; Llama 3.1 70B Q4_K_M = 42.5GB). Real engines land well below the ceiling, but the ratios between cards hold, because decode is memory-bandwidth-bound.

Llama 3.1 8B

GPUtok/sPower$/perf
RTX 4090 (24GB, 1,008 GB/s)~205 tok/s ceiling450W TGPprice not re-read Nov 2026
RTX 5080 (16GB, 960 GB/s)~195 tok/s ceiling360W TGPprice not re-read Nov 2026
RX 7900 XTX (24GB, 960 GB/s)~195 tok/s ceiling355W TBP$1,820.99 new / $1,175 used (Nov 2, 2026)
RX 7900 XT (20GB, 800 GB/s)~163 tok/s ceiling315W TBPprice not re-read Nov 2026
RX 9070 XT (16GB, 640 GB/s, RDNA 4)~130 tok/s ceiling304W TBPprice not re-read Nov 2026
RTX 3090 (24GB, 936 GB/s)~190 tok/s ceiling350W TGP~$1,499-1,606 used (Nov 1, 2026)
Strix Halo iGPU (~256 GB/s)~52 tok/s ceiling55-120W platformsystem price; see above

Price sources: RX 7900 XTX from videocardprices.com (lowest new: Amazon, listed October 17, 2026; used: eBay, November 2, 2026); RTX 3090 fair used range from resaleprices.com (November 1, 2026). Power is the vendor's board-power rating. The pattern: AMD's 24GB card matches NVIDIA's 24GB cards on bandwidth, while the 16GB RX 9070 XT trades bandwidth and capacity for a newer architecture and FP8 hardware.

Llama 3.1 70B Q4

GPUtok/sNotes
2x RTX 3090 NVLink (48GB)~22 tok/s ceilingLayer split; one card's bandwidth per token
2x RX 7900 XTX (48GB, no NVLink)~23 tok/s ceilingLayer split over PCIe
1x MI300X (192GB, 5.3 TB/s)~125 tok/s ceilingSingle GPU
Strix Halo (128GB unified, ~256 GB/s)~6 tok/s ceilingFits easily; bandwidth-limited
Mac Studio M4 Max (128GB, 546 GB/s)~13 tok/s ceilingReference

MI300X is the clear throughput leader for 70B. For the home segment, the choice is capacity versus speed: two 24GB cards decode a 70B faster, while a 128GB unified-memory box holds bigger models at much lower power.

A note on the models above: the ceilings use Llama 3.1 8B / 70B because they are stable, widely reproduced reference points, but there are stronger open-weight options you'll actually want to run on these AMD cards, including Qwen3, DeepSeek, gpt-oss and Gemma. The bandwidth arithmetic carries over directly: divide your card's bandwidth by the model's file size (for MoE models, the active weights matter, so they run faster than their file size suggests). For current picks, see our best free local AI models roundup and the RX 7900 XTX model picks.


Troubleshooting

SymptomLikely CauseFix
hipErrorNoBinaryForGpugfx mismatchSet HSA_OVERRIDE_GFX_VERSION or rebuild with right AMDGPU_TARGETS
Ollama uses CPU onlyDriver / group permissionsgroups should include render+video; rocm-smi should list GPU
HSAKMT_STATUS_KERNEL_ALREADY_OPENEDOld AMD kernel moduleReinstall amdgpu-dkms
Crashes mid-inferenceMemory pressure / powerLower -c context size, reduce --gpu-memory-utilization
Very slow on RX 7900Model partly on CPU, or FlashAttention off at long contextCheck ollama ps reads 100% GPU; in llama.cpp build with HIP and pass -fa
WSL2 GPU not detectedWrong driverInstall AMD Software for WSL on Windows host
rocBLAS warningsArchitecture not in shipped tensile libraryRun rocblas-bench --rebuild_tensile or use gfx1100-compatible override
Strix Halo OOM on a 70BMemory not allocated to iGPU, or FP16 build (141GB)Increase the iGPU reservation in BIOS; use Q4_K_M (42.5GB) or Q8_0 (75GB)
MI300X under-utilizedNot enough concurrencyIncrease --max-num-seqs to 256+ in vLLM

FAQ

See answers to common AMD ROCm questions below.


Sources: AMD ROCm Documentation | ROCm release history / versions | ROCm 7 — what's new | Ollama AMD support | vLLM ROCm Docker | llama.cpp HIP build instructions | AMD Ryzen AI Max+ 395 product page | AMD Instinct MI325X | AMD RX 7900 XTX specifications | ROCm install (Core SDK 10.1) | Prices: videocardprices.com and resaleprices.com, read November 1-2, 2026; Strix Halo systems from vendor stores, November 2, 2026.

Related guides on Local AI Master:

🎯
AI Learning Path

Got the hardware sorted? Now build on it.

You know what to buy — the courses show you what to actually run, fine-tune, and ship on it. First chapter free, no card.

Or own it for life — Lifetime $149 $599, pay once
Once your hardware is sorted

Decide before you spend a thousand pounds

The AI Hardware course sizes your build properly — VRAM ladder, real bottlenecks, budget builds — and Pick the Right Model tells you what to run on it.

$149 once unlocks everything, forever — about $0.27/chapter for life. Prefer to spread it out? Pro is $79/year (saves 27%) or $8.99/month.
Secure checkout by Lemon Squeezy — your card never touches this siteInstant access the moment you payFirst chapter of every course is free — try before you buy

Liked this? 25 full AI courses are waiting.

From fundamentals to RAG, agents, MCP servers, voice AI, and production deployment with real GitHub repos. First chapter free, every course.

Reading now
Join the discussion
Tagsamdrocmradeonstrix halomi300xryzen ai maxlocal llmollamavllmllama.cpp

Barsha Mohapatra

Local AI Master writes hands-on courses and hardware guides for running AI on machines you own. Content is checked against current releases and corrected when readers tell us it is wrong.

Build Real AI on Your Machine

RAG, agents, NLP, vision, and MLOps - chapters across 25 courses that take you from reading about AI to building AI.

Want the structured version?

Hands-on courses on local AI, from $8.99 a month. The first chapter of each is free.

AI Learning Path
More on Ollama
See the full Best Ollama Models 2026 guide.

Comments (0)

No comments yet. Be the first to share your thoughts!

📅 Published: May 1, 2026🔄 Last Updated: November 2, 2026✓ Manually Reviewed

Bonus kit

Ollama Docker Templates

10 one-command Docker stacks for Ollama. Now includes ROCm variants for Radeon and Strix Halo. Included with paid plans, or free after subscribing to both Local AI Master and Little AI Master on YouTube.

See Plans →

Build Real AI on Your Machine

RAG, agents, NLP, vision, and MLOps - chapters across 25 courses that take you from reading about AI to building AI.

Was this helpful?

Barsha Mohapatra

Written by

Barsha Mohapatra

Founder and Editor, Local AI Master · Founder, Little AI Master

Founder of Little AI Master and the editor behind every course and guide on Local AI Master. Years of tutoring students taught her where AI education actually fails.

📚
Free · no account required

Grab the AI Starter Kit — career roadmap, cheat sheet, setup guide

No spam. Unsubscribe with one click.

🎯
AI Learning Path

Go from reading about AI to building with AI

25 structured courses. Hands-on projects. Runs on your machine. Start free.

Or own it for life — Lifetime $149 $599, pay once
Free Tools & Calculators