高级 12 分钟llama.cpp
llama.cpp 配合 Vulkan (GPU universel)
Vulkan 是跨厂商的图形 API:它支持 NVIDIA、AMD、Intel Arc,甚至集成显卡(iGPU)。使用 Vulkan 后端编译 llama.cpp 可完全绕过 CUDA/ROCm 的复杂问题,提供一个在各种平台都能运行的解决方案。代价是性能比原生后端低 10% 至 20%——对于异构环境来说,这通常是一个合理的权衡。
#为何选择 Vulkan
- Vendor-agnostic
- 相同的二进制文件可在GeForce、Radeon、Arc、Iris上运行。便于分发工具或在购买显卡前测试模型。
- 安装简便
- Vulkan 驱动程序已包含在标准图形驱动中。无需安装数 GB 的工具包。
- 旧显卡
- GTX 1060 6 GB 或 RX 580 可通过 Vulkan 运行,而 CUDA 已不再支持这些旧显卡,ROCm 也不支持。
- Intel Arc
- Vulkan 对 Arc A580/A750/A770 的支持良好,而 oneAPI 的支持则不太稳定。
#支持的 GPU
- NVIDIA
- 所有 Maxwell 及更新架构的显卡(GTX 900 及更新)。所有近期 NVIDIA 驱动程序均支持 Vulkan。
- AMD
- Polaris (RX 400/500),Vega,Navi (RX 5000/6000/7000/9000)。Linux 上使用 Mesa,Windows 上使用官方驱动。
- Intel Arc
- Alchemist(A380-A770)和 Battlemage。在本地 AI 场景中性价比出色。
- Intel iGPU
- Xe(Tiger Lake+),Xe2(Lunar Lake,Arrow Lake)。适用于无专用GPU的笔记本电脑上运行的小型模型。
#先决条件
#1. 构建
Vulkan着色器在构建时编译。编译时间约3到8分钟,取决于CPU性能。
本地 AI 套件
只需 1 小时,即可在您的电脑上拥有专属的免费 ChatGPT — LM Studio、Ollama、Open WebUI、您的文档,无需云端。
- 在线空间,终身可用
- PDF + 文件
- 30 天内退款
#2. 测试
启动时,llama.cpp会通过Vulkan显示检测到的GPU:ggml_vulkan: Found 1 Vulkan devices: ... Intel(R) Arc(TM) A770。若您有多个GPU,请使用 -mg N(主GPU索引)来指定。
#3. 与 CUDA / ROCm 的性能对比
每秒令牌(Qwen 3.5 9B Q4_K_M,启用 Flash Attention,估算值):
- RTX 4070 — 原生CUDA支持
- ~82 token/秒(参考值)
- RTX 4070 — Vulkan
- ~70 个标记/秒(-15%)
- RX 7800 XT — ROCm
- ~56 tok/s。
- RX 7800 XT — Vulkan
- ~48 个标记/秒(-15%)。有时在 ROCm 卡住时反而最快
- Arc A770 16 GB — Vulkan
- ~43 tok/s,性价比最优。
- Intel Xe iGPU(Lunar Lake)
- ~8-13个token/秒。适用于2-3B模型,9B模型上表现勉强。
#何时选择 Vulkan
- 您使用的是英特尔Arc显卡
- 2026 年,Vulkan 优于 oneAPI。性能稳定,无需特殊的安装步骤。
- ROCm 不配合
- AMD 显卡未获官方支持,强制覆盖设置又导致崩溃:Vulkan 是可行的备用方案。
- 多厂商硬件配置
- 同时配备 GeForce 和 Intel Arc 的机器,或 Thunderbolt + eGPU 配置可变的笔记本电脑。Vulkan 都能兼容。
- 工具的分发
- 如果您开发的应用需要在配置未知的机器上运行,Vulkan版二进制程序的兼容性最好。
i
不适用于 Mac
在 macOS 上,Vulkan 通过 MoltenVK 运行,后者是将 Vulkan 转换为 Metal 的转换层。请改用 llama.cpp 的原生 Metal 后端——速度更快。
这份指南对您有帮助吗?
有反馈、发现了错误,或想补充说明?请告诉我们,让这份指南对每个人都更有帮助。
目录
分享