ROCmAMD 与 ROCm

HSA_OVERRIDE_GFX_VERSION 怎么设置

你会看到的内容

HSA_OVERRIDE_GFX_VERSION

是什么意思

一个环境变量,让 ROCm 把你的 Radeon 当成相近的受支持型号,从而让 ROCm 版的 Ollama 和 llama.cpp 能用上 ROCm 不支持的显卡。仅限 Linux。

为什么会出现

  • 当显卡的 gfx 型号不在 ROCm 支持列表里时需要它 —— 表现为 rocBLAS 的 "Cannot read TensileLibrary" 报错,或 Ollama 退回 CPU。

怎么解决

  1. 用 rocminfo | grep gfx 查出你的型号,再按 x.y.z 格式设置最接近的受支持型号:10.3.0 对应 gfx1030,11.0.0 对应 gfx1100。
  2. 要设置给服务端,而不是当前终端:Ollama 服务用 sudo systemctl edit ollama,加入 Environment="HSA_OVERRIDE_GFX_VERSION=10.3.0",然后重启服务。
  3. 两张不同型号的 Radeon 要分别设置:HSA_OVERRIDE_GFX_VERSION_0=10.3.0、HSA_OVERRIDE_GFX_VERSION_1=11.0.0。
  4. Windows 上不适用:那里的 Ollama 在 RX 7600–7900 上用 ROCm,其他 Radeon 用 Vulkan。

相关指南

相关报错

核对来源

报错原文于 2026-10-26 从源码中读取核对。