快速结论:该问题通常出现在 Windows 上使用 Vulkan 后端运行 llama.cpp 时:显卡有充足的专用显存,但 llama.cpp 优先把模型放进显存可见的共享内存(ReBAR 相关机制),导致推理速度明显变慢。优先排查 ReBAR 与驱动行为,并尝试关闭 llama.cpp 使用 host-visible VRAM 的路径。
适用环境:llama.cpp-win-x86_64-vulkan-avx2(1.24.1);Windows 10(后续评论中有用户提到 Windows 11 仍未解决);Vulkan 后端;AMD RX 9070(评论中另有用户报告 9060 XT 16GB、Adrenaline 25.9.1 也存在类似现象);模型为 ministral-8b-instruct-2410-q5_k_m.gguf(约 5.72 GB)。Issue 最初的复现环境是通过 LM Studio 使用 Vulkan llama.cpp。
最快修复方案:可优先尝试设置用户环境变量 GGML_VK_DISABLE_HOST_VISIBLE_VIDMEM=1,然后重启 LM Studio 等基于 llama.cpp 的应用。该方案在 Issue 后续评论中由用户确认解决了“模型落到共享内存、生成极慢”的现象,但并非维护者给出的最终修复。
注意事项:维护者认为这更可能是 AMD 驱动在 RDNA4 / Windows 下的问题,并明确表示 Vulkan 后端无法像 ROCm 那样直接分配 GPU 显存;该设置属于 llama.cpp 侧绕过 ReBAR / 共享内存分配的行为,是否在所有驱动版本和所有模型尺寸上生效尚未验证。Issue 中关于“开启 Resizable BAR 可规避”的说法仅为用户报告,且需要主板 / BIOS 支持。
问题场景
用户在 Windows 10 上使用 LM Studio 调用 llama.cpp 的 Vulkan 后端,显卡为 AMD RX 9070(16 GB 专用显存),加载约 5.72 GB 的 ministral-8b-instruct-2410-q5_k_m.gguf 模型。实际推理速度约为纯 CPU 的一半,观察到的现象是模型被分配到约 8 GB 的共享内存,而不是 16 GB 的专用显存;大于 8 GB 共享内存的模型无法加载。用户还在评论中提到,通过 ROCm 加载时模型会先进入专用显存,但随后崩溃。
报错原文
Eval bug: vulkan Llama cpp prefers shared memory over dedicated memory
Issue 正文说明没有提供日志输出(“There are no logs”),问题主要以显存占用截图和推理速度下降来体现。
原因分析
维护者回复称,此前已收到 RDNA4 在 Windows 上的类似报告,但“这种行为不在我们的控制范围内”,并推测是 AMD 驱动的问题,因为在其他代际显卡上表现正常。可能原因是:Vulkan 后端在 Windows 驱动下选择了 host-visible 的显存路径(与 ReBAR / 共享内存机制相关),而 AMD 驱动没有按预期优先使用专用显存。Issue 中用户提出开启 Resizable BAR 作为 workaround,但这只是用户侧观察,未得到维护者确认。维护者也解释了为什么不能照搬 ROCm 的直接显存分配方式:Vulkan 的内存机制与硬件之间隔了更多抽象层。
环境排查
- 确认是否使用 llama.cpp 的 Vulkan 后端,而不是 CUDA / ROCm 后端。
- 确认 llama.cpp 版本(Issue 为 vulkan-avx2 1.24.1)以及调用它的应用(如 LM Studio)版本。
- 确认操作系统版本(Issue 为 Windows 10,评论中有 Windows 11 仍复现)。
- 确认 AMD 显卡型号与驱动版本(Issue 为 RX 9070;评论中 9060 XT 16GB 在 Adrenaline 25.9.1 上仍复现)。
- 确认模型大小与显存 / 共享内存占用情况,观察模型加载后主要落在专用显存还是共享内存。
- 确认主板与 BIOS 是否支持并开启 Resizable BAR;Issue 中用户使用 i7 6700k,需要修改 BIOS 才能开启。
- 确认是否设置了
GGML_VK_DISABLE_HOST_VISIBLE_VIDMEM=1环境变量,以及设置后是否重启过应用。
解决步骤
- 先记录当前模型加载后的显存占用和生成速度,作为对照。
- 在 Windows 中打开“编辑账户的环境变量”,在用户变量中新建:名称为
GGML_VK_DISABLE_HOST_VISIBLE_VIDMEM,值为1。设置为用户环境变量,以便 LM Studio 等基于 llama.cpp 的应用能够读取。 - 完全退出并重新启动 LM Studio 或其他 llama.cpp 前端,使环境变量生效。
- 重新加载同一模型,观察模型是否优先占用专用显存、生成速度是否恢复。
- 如果仍无效,可进一步排查驱动:更新 AMD 驱动后重试;若主板支持,检查 Resizable BAR 状态(Issue 中用户报告开启 ReBAR 是 workaround,但后续评论中 9060 XT 用户表示在 Adrenaline 25.9.1 上开关 ReBAR 仍无效)。
- 若问题持续,可考虑向 AMD 驱动团队反馈,因为维护者认为根因在驱动侧。
验证方法
重启应用后加载同一模型,对比设置前后任务管理器或显卡监控中的专用显存 / 共享内存占用:若模型主要占用专用显存,且生成速度不再接近或低于纯 CPU,则说明规避生效。Issue 中用户反馈设置该环境变量后,模型不再落到共享内存,生成速度恢复正常;同时注意该 Issue 最终因 stale 被关闭,AMD 驱动侧的根因是否修复未在讨论中确认。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。
![[Bug]: Cloudflare decisions provider uses the /ai/run path the chat provider calls 'legacy' — inconsistent and undocumented](https://www.chat-gpts.plus/wp-content/uploads/2026/10/47965-5a0857ed-768x403.jpg)
![[Bug] Presidio guardrail: end-to-end PII masking broken with Anthropic native API](https://www.chat-gpts.plus/wp-content/uploads/2026/10/22821-28bd5fd5-768x403.jpg)
