PantheonSim / GPUs / AMD Radeon RX 6800

Simulated AMD Radeon RX 6800: a GPU profile for CUDA and ROCm testing

PantheonSim, the GPU simulator for CUDA and ROCm, simulates the AMD Radeon RX 6800 (RDNA 2, gfx1030) as the profile amd/rx6800. A Radeon RX 6800 (Navi 21 with 60 of its 80 compute units), read from a physical card. Its profile is verified, which means it was read from a physical card.

The profile at a glance

These are the numbers a program can ask this simulated GPU, and the values rocm-smi and amd-smi show for it. They come from the profile file in the simulator's repository, pinned to one commit of it.

PropertyValue
Profile idamd/rx6800
Vendor and architectureAMD, RDNA 2
GPU targetgfx1030
Device memory16.0 GiB, GDDR
Multiprocessors (as HIP reports them)30
Wavefront size32
Max threads per multiprocessor2048
Shared memory per block (opt-in maximum)64 KiB
L2 cache4 MiB
Power limit (profile)203 W
Maximum clocks (profile)2475 MHz shader, 2000 MHz memory
ECC memoryno
PCIe link reportedGen4 x16
Tensor or matrix coresno
Verified (measured on a physical card)yes

What this GPU is for

A Radeon RX 6800 (Navi 21 with 60 of its 80 compute units), read from a physical card.

RDNA 2 is the Radeon RX 6000 generation, gfx1030 and gfx1031. Kernels run 32 lanes to a wave, and there are no matrix instructions, so PyTorch's matrix products run on the vector units.

Among the 10 AMD profiles it ranks 7th by device memory (16.0 GiB) and 9th by multiprocessors as HIP counts them (30), counting the largest as first.

Is this profile verified?

Yes. This profile is marked verified, which means its values were read from a physical AMD Radeon RX 6800 by the simulator's characterization tools, not copied from a data sheet. Verified describes the profile's numbers: it says nothing about speed, because the simulator has no timing model.

Simulate this GPU

Build the simulator (see the docs) or open the playground, then:

hipcc --offload-arch=gfx1030 my_app.hip -o my_app
vgpu run --gpu amd/rx6800 ./my_app
vgpu shell -y --gpu amd/rx6800 --count 4 --rocm 7.1.0
vgpu info --gpu amd/rx6800

Build for this card's own gfx target, gfx1030. A program built for another target is refused by name, as the real runtime refuses it, and hipErrorNoBinaryForGpu means exactly this.

To use it every time, put gpu: amd/rx6800 in a pantheonsim.yaml settings file, or in a GitHub Actions job give the PantheonSim action gpu: amd/rx6800 (see CUDA and HIP tests in GitHub Actions). The simulator checks behaviour and has no timing model, so a run on a physical GPU before a release still counts. The ROCm and HIP guide explains the rest.

Where the numbers come from

Each profile file begins with a note on its sources. This is the note for AMD Radeon RX 6800, as written in the file:

Source note for amd/rx6800

Read from a card (2026-10-09, ROCm 7.2.0, amdgpu on Linux 7.0): rocminfo, HIP's device properties (amd/tools/characterize-hip.cpp), amd-smi, rocm-smi, lspci and the KFD topology, kept in amd/registers/measurements/rx6800/. So verified: true. What no tool reports (the per-multiprocessor block limit) is the RX 6900 XT profile's, the same chip. gfx1030 (RDNA2, Navi 21 with 60 of its 80 compute units): kernels run 32 lanes to a wave, and it has no matrix instructions, so PyTorch's matrix products run on its vector units. HIP counts its compute units in pairs (workgroup processors): 30 of the card's 60.

The GPU index lists every profile, and this one is measured on a physical card.

Other RDNA 2 profiles: