(ROCm) AMD-GPU-Boost: Unlock Full Performance on Consumer AMD GPUs #5226
Replies: 3 comments 4 replies
|
Hi @Painter3000, thanks for the interest in improving performance on RDNA devices! Did you actually benchmark real-world performance? I think part of this stems from a common point of confusion. The reported 36 multiprocessors is not the CU count but rather the workgroup count, as gfx10 and gfx11 devices (we don't specify gfx12 in the docs, I'll have to check) are in WGP mode by default; see https://rocm.docs.amd.com/projects/HIP/en/latest/how-to/hip_rtc.html#cu-mode-vs-wgp-mode and the footnotes in https://rocm.docs.amd.com/projects/HIP/en/latest/reference/hardware_features.html#id13. In this mode, the CUs are grouped in pairs (hence the reported multiprocessor count being half of the CU count for the device) and can execute twice as many wavefronts simultaneously, so the performance is not cut in half by doing this. The actual performance impact is application-dependent, and these devices do still support CU mode, so you can experiment with overriding to CU mode on a per-application basis. CU mode can be enabled at runtime by setting GPU_ENABLE_WGP_MODE=0. After doing this, As for the wavefront size, gfx10 and gfx11 devices (again, will have to check for gfx12) have a native wavefront size of 32 but there is a compiler flag ( It's cool that you're looking into this, but I encourage benchmarking real-world performance as it's difficult to extrapolate from the multiprocessor count and wavefront size. You'll find hardware limitations, memory access pattern changes, etc. will get in the way. And if at the end of the day you do see a performance increase from these overrides, that's great! As mentioned the CU/WGP mode difference is a common point of confusion, so this could be a convenient way for users to apply these overrides for themselves, even if it just gives a small boost and not 4x. |
|
nearly one year old. Does this have been integrated in a version rocm , if yes which one ? |
|
Hi, thanks for asking.
The short answer is: no, AMD-GPU-BOOST was not integrated into ROCm as a real fix, because the original assumption behind the project turned out to be wrong.
At the time I interpreted multi_processor_count = 36 on the RX 6800 XT as ROCm detecting only 36 of the 72 Compute Units. That was incorrect. On RDNA/RDNA2 this value maps much better to WGPs, and one WGP contains two Compute Units. So 36 WGPs correspond to the expected 72 CUs.
The same applies to the warp/wavefront size. I originally assumed that RDNA2 should be forced to 64, but ROCm/HIP commonly reports 32 for RDNA, and that is not automatically wrong or “half performance”. RDNA supports Wave32 and Wave64, but Wave32 is normal for many compute paths.
So the RX 6800 XT does not need this hack to “fully unlock” the GPU. If ROCm/PyTorch supports your setup properly, the card should work without AMD-GPU-BOOST. Performance improvements since then mostly came from newer ROCm/PyTorch versions and better kernels/libraries, not from this monkey patch.
I would not recommend using AMD-GPU-BOOST as a general fix anymore. At most, it may still be useful as an experimental workaround for badly written CUDA-oriented Python code that makes poor scheduling decisions based on torch.cuda.get_device_properties(). But it should not be treated as required for normal ROCm operation.
Best recommendation: use a recent ROCm/PyTorch build for gfx1030, benchmark your real workload, and only consider patches if a specific application has a proven device-property heuristic bug.
Gesendet: Donnerstag, 18. Juni 2026 um 15:32
Von: "ALAIN BKR" ***@***.***>
An: ROCm/ROCm ***@***.***>
CC: Painter3000 ***@***.***>,Mention ***@***.***>
Betreff: Re: [ROCm/ROCm] (ROCm) AMD-GPU-Boost: Unlock Full Performance on Consumer AMD GPUs (Discussion #5226)
nearly one year old.
Does this have been integrated in a version rocm , if yes which one ? Or does RX6800XT still need some hack to fully work ?
— Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today! You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Uh oh!
There was an error while loading. Please reload this page.
https://github.com/Painter3000/AMD-GPU-BOOST
I've been frustrated with AMD GPU performance in AI/ML applications - my RX 6800 XT was only using ~25% of its potential in PyTorch. The issue? ROCm was designed for MI-series enterprise GPUs and severely underdetects consumer GPU capabilities.
ROCm reports only 36 compute units instead of 72, and uses warp size 32 instead of the optimal 64 for RDNA2/3. This affects the entire RX 6000/7000 series.
AMD-GPU-BOOST fixes this at runtime by monkey-patching PyTorch's device detection. Results: - 4x performance improvement in inference - "NVIDIA-only" apps now run perfectly on AMD - Works with ComfyUI, Stable Diffusion, WAN 2.1, etc.
The tool includes a GUI installer for easy Pinokio integration and supports 18+ GPU models from RX 6400 to RX 7900 XTX.
This has been a major pain point for the AMD AI community - curious what the HN crowd thinks about runtime hardware detection fixes vs. proper driver/framework solutions.
Demo: My RX 6800 XT went from 1152 threads (36×32) to 4608 threads (72×64) - exactly what the hardware specs promise.
“What do you think – is runtime patching a legitimate option or should AMD urgently address this issue?”
All reactions