切换语言
切换主题

Ollama GPU 加速配置:CUDA、ROCm 与 Metal 全平台实战指南

盯着终端里一行行慢慢爬出来的文字,我忍不住看了一眼时间——47 秒。这是跑 Llama 3 8B 在我那台老笔记本上的速度,CPU 满载,风扇狂转,每秒大概 5 个 token。说实话,这体验挺劝退的,本来想用它写点代码辅助,结果等它回复的时间够我自己去 Google 找答案了。

后来我把同一张显卡换到台式机上,装好 CUDA 驱动,同样的模型同样的参数——3 秒。

不是夸张,就是从近一分钟变成几秒钟。那种”我问完了现在就想知道答案”的感觉,终于回来了。

这篇文章就是想帮你搞定 Ollama 的 GPU 加速配置。不管你是 NVIDIA、AMD 还是 Apple Silicon,我都会讲清楚怎么配置、怎么验证、踩了坑怎么爬出来。把那些等待时间省下来,去做更有意思的事。

GPU 加速到底有多香:从 30 秒到 3 秒的真实差距

先说结论:用 GPU 跑本地大模型,速度能提升 10 到 20 倍。这不是广告词,是我实测下来的数据,也是社区里大量用户的共识。

你可能想问:CPU 不是也能跑吗?干嘛非要折腾 GPU?

能跑是能跑,但体验完全不一样。CPU 跑 7B 参数的模型,每秒大概 3-8 个 token,输出一段 500 字的回答要等 20-60 秒。换成 GPU,同样的模型每秒 40-80 个 token,几秒钟就出来了。这种差距不是”快一点”,是从”能用”到”好用”的质变。

你的显卡支持吗?

Ollama 支持三种 GPU 平台,各有各的要求:

NVIDIA 显卡:最主流,也最省心。官方要求 Compute Capability 5.0 以上,基本就是 GTX 900 系列之后的卡。GTX 1060、RTX 3060、RTX 4090 这些都没问题。我手上有张 RTX 3060 12GB,跑 14B 以下的模型绰绰有余。

AMD 显卡:配置稍微麻烦点,但也能跑。Linux 下需要 ROCm v7,Windows 目前只有 ROCm v6.1 的预览版。支持的显卡型号也有要求,RX 6000 和 RX 7000 系列比较稳,老卡需要一些额外设置。

Apple Silicon:M1/M2/M3/M4 全系支持,而且是自动启用的。Mac 用户基本不用配置,装好 Ollama 就能用 Metal 加速。2026 年之后还多了 MLX 后端选项,性能又提了一截。

VRAM 够不够用?

这是很多人忽略的点。GPU 跑模型,显存(VRAM)是硬指标。

简单算笔账:7B 模型用 4-bit 量化大概要 5-6GB 显存,14B 要 10-12GB,70B 就得 40GB 以上了。你的显卡显存多少,直接决定了能跑多大的模型。我那张 RTX 3060 12GB,跑 Llama 3 8B 很舒服,但跑 Mixtral 8x7B 就捉襟见肘,只能用 CPU 补一部分内存。

所以配置 GPU 之前,先搞清楚自己显卡型号和显存大小,心里有个数。

NVIDIA CUDA:最省心的方案(但也要注意几个坑)

如果你用的是 NVIDIA 显卡,恭喜你,配置过程可能是三种平台里最简单的。

先确认驱动装了没

打开终端,输入:

nvidia-smi

如果看到一张表格,里面有显卡型号、显存大小、驱动版本这些信息,说明驱动已经装好了。Ollama 会自动检测并使用 CUDA,不需要你再单独装什么 CUDA Toolkit——对,你没看错,Ollama 自带了必要的 CUDA 库,省了一步。

如果报错说命令找不到,那得先装驱动。Ubuntu 用户可以跑:

sudo apt install nvidia-driver-535  # 或者更新的版本

装完重启,再 nvidia-smi 确认一下。

多显卡怎么办?

如果你的机器插了多张显卡(比如两块 RTX 3090),默认情况下 Ollama 会把模型分散到所有卡上。但有时候你想指定某张卡,比如一张卡跑模型,另一张卡干别的。

这时候需要设置环境变量:

# 只使用第 0 张显卡
export CUDA_VISIBLE_DEVICES=0

# 使用第 0 和第 2 张显卡
export CUDA_VISIBLE_DEVICES=0,2

把这一行加到 ~/.bashrc 或者 systemd 服务配置里,就能持久化生效。

Docker 里跑 Ollama?

有些朋友喜欢把所有服务都塞容器里,Ollama 也可以。但要注意,Docker 容器默认是访问不到宿主机 GPU 的,需要额外配置。

用 NVIDIA 官方的 nvidia-container-toolkit

# 安装 toolkit
sudo apt install nvidia-container-toolkit

# 配置 Docker runtime
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

然后启动 Ollama 容器时加上 --gpus all 参数:

docker run -d --gpus all -v ollama:/root/.ollama -p 11434:11434 ollama/ollama

怎么确认 GPU 真的在用?

一个简单的验证方法:跑模型的时候,另开一个终端执行:

ollama ps

输出里会显示当前运行的模型和 GPU 使用情况。如果看到类似 GPU: 100% 的字样,说明加速生效了。

也可以用 nvidia-smi -l 1 实时监控显存占用,跑模型时显存应该会明显上涨。

AMD ROCm:配置稍微麻烦,但跑起来一样快

AMD 用户的心酸我懂——网上教程基本都在讲 NVIDIA,AMD 的文档又少又碎。不过好消息是,Ollama 对 ROCm 的支持已经稳定多了,只是配置步骤多了几步。

Linux 用户的正解:ROCm v7

如果你用的是 Ubuntu 22.04 或更新的发行版,安装 ROCm 其实不算太折腾:

# 添加 AMD 官方源
sudo apt update
sudo apt install amdgpu-install
sudo amdgpu-install --usecase=rocm

# 把自己加到渲染组
sudo usermod -aG render,video $USER

# 重启生效
sudo reboot

重启后,用 rocminfo 命令验证是否识别到显卡。如果看到你的 GPU 信息,就可以装 Ollama 了。AMD 版本的 Ollama 会自动检测 ROCm 环境,不用额外配置。

Windows 用户:目前还是预览版

说实话,Windows 下的 ROCm 支持还不太成熟。官方提供了 ROCm v6.1 的预览版,但支持的显卡型号有限,稳定性也不如 Linux。如果你主要在 Windows 上工作,又有 AMD 显卡,我的建议是:

优先考虑 WSL2 + Ubuntu,在 Linux 子系统里跑 Ollama。性能和稳定性都比原生 Windows 一大截。

老显卡怎么办?HSA_OVERRIDE 来救场

AMD 的显卡架构代号有点复杂,ROCm 官方只支持比较新的架构(gfx900、gfx1030 这些)。如果你的显卡比较老,比如 RX 580(gfx803),ROCm 默认不会识别。

这时候可以用环境变量强制覆盖:

export HSA_OVERRIDE_GFX_VERSION=10.3.0  # 强制使用 gfx1030 兼容模式

这招不是所有情况都管用,但社区反馈对不少老卡有效。试试看,不行就只能回退到 CPU 了。

多 GPU 配置

和 NVIDIA 类似,AMD 也支持指定使用哪些显卡:

export ROCR_VISIBLE_DEVICES=0,1  # 使用第 0 和第 1 张显卡

查看显卡编号可以用 rocm-smi 命令。

常见 AMD 显卡架构代号

列一些常见型号对应的架构,方便排查:

显卡型号架构代号ROCm 支持
RX 7900 XTXgfx1100原生支持
RX 6800 XTgfx1030原生支持
RX 5700 XTgfx1010原生支持
RX 580gfx803需 HSA_OVERRIDE
Vega 56/64gfx900原生支持

总的来说,AMD 的配置确实比 NVIDIA 多踩几个坑,但一旦跑通了,性能差距不大。

Apple Metal:Mac 用户的隐藏福利

如果你用的是 Apple Silicon 的 Mac(M1/M2/M3/M4),这里有个好消息:你什么都不用配置。

真的,什么都不用。装好 Ollama,运行模型,GPU 加速自动启用。Apple 的 Metal 框架已经被 Ollama 内置支持,系统会自动把模型加载到 GPU 上。

M 系列芯片的性能表现

根据社区实测,Mac 跑本地 LLM 的速度其实相当不错:

  • M1/M2 8GB:跑 7B 模型,大约 15-20 tok/s
  • M2 Pro 16GB:跑 14B 模型,能到 25-30 tok/s
  • M3 Max 36GB:跑 30B 以上模型,也能维持 30+ tok/s

比起 CPU-only 的老机器,这速度已经很实用了。虽然比不上 RTX 4090 那种”秒回”级别,但日常写代码辅助、翻译润色这些场景完全够用。

2026 年的新福利:MLX 后端

如果你用的是 M 系列芯片,而且统一内存有 32GB 以上(比如 M3 Max、M4 Pro),还可以启用 MLX 后端——这是 Apple 专门为自家芯片优化的一套机器学习框架。

根据开发者社区的数据,MLX 后端能让推理速度提升 93%。什么意思呢?原来跑 Llama 3 8B 是每秒 57.8 个 token,换成 MLX 能冲到 111.4 tok/s。这差距,相当于从”还算流畅”变成”真的快”。

启用方法也不难,就是加个参数:

ollama run llama3 --backend mlx

不过要注意,MLX 目前对内存要求比较高,32GB 以下可能不太稳。还有,只有部分模型支持 MLX,主要是那些以 mlx 格式发布的版本。

怎么确认 GPU 在干活?

打开 Activity Monitor(活动监视器),切换到 GPU History 标签页。跑模型的时候,你应该能看到 GPU 使用率明显上涨。如果全程只有 CPU 在动、GPU 一点动静都没有,可能是 Metal 没启用,这种情况比较少见,通常重装一下 Ollama 就能解决。

GPU 检测失败了怎么办:常见问题排查

折腾硬件配置,踩坑几乎是必经之路。我把遇到过的问题和解决方案整理了一下,希望能帮你少走弯路。

问题 1:no compatible GPUs were discovered

这个报错最常见,意思就是 Ollama 找不到能用的显卡。

可能的原因

  • 驱动没装或者版本太老
  • 显卡型号不支持(比如 GTX 700 系列这种老卡)
  • Docker 容器没配置 GPU 访问权限

排查步骤

# NVIDIA:确认驱动
nvidia-smi

# AMD:确认 ROCm
rocminfo

# 如果命令报错,先装驱动

问题 2:Not compiled with GPU offload support

这个错误说明你下载的 Ollama 版本没有 GPU 支持。

解决方法:去官网重新下载正确的版本。AMD 用户注意,Ollama 有专门的 ROCm 版本,下载链接和 CUDA 版本不一样。别下载错了。

问题 3:NVIDIA 驱动版本过低

Ollama 要求 NVIDIA 驱动版本至少 450 以上。如果你的系统还在用 400 多的老版本,CUDA 就没法工作。

# 查看当前驱动版本
nvidia-smi | grep "Driver Version"

# 如果版本太老,更新驱动
sudo apt install nvidia-driver-535

问题 4:AMD amdgpu 驱动缺失

Linux 下 AMD 显卡需要 amdgpu 驱动才能正常工作。有些系统默认装的是老版本 radeon 驱动,不支持 ROCm。

# 检查当前加载的驱动
lsmod | grep amdgpu

# 如果没有输出,需要手动安装
sudo apt install amdgpu-dkms

问题 5:SELinux 拒绝容器访问 GPU

这个坑我在 CentOS/RHEL 系的系统上遇到过。SELinux 默认策略会阻止容器访问 GPU 设备。

临时解决:

sudo setenforce 0  # 临时关闭 SELinux

永久解决需要调整 SELinux 策略,比较复杂,建议查阅 Red Hat 官方文档。或者干脆换 Ubuntu,省事。

验证命令汇总

最后给一个快速验证的命令清单,有问题的时候按这个顺序排查:

# 1. 看显卡是否被系统识别
nvidia-smi       # NVIDIA
rocminfo         # AMD
system_profiler SPDisplaysDataType  # macOS

# 2. 看 Ollama 进程状态
ollama ps

# 3. 实时监控 GPU 使用(跑模型时)
watch -n 1 nvidia-smi    # NVIDIA
rocm-smi -a              # AMD

# 4. 查看环境变量
echo $CUDA_VISIBLE_DEVICES
echo $ROCR_VISIBLE_DEVICES

大多数问题都能通过这几个命令定位出来。实在搞不定,去 Ollama 的 GitHub Issues 搜索一下,社区里踩过坑的人不少。

写在最后

说了这么多,给你一个快速速查表:

平台前置条件配置难度推荐程度
NVIDIA驱动 450+简单(基本零配置)首选
AMD (Linux)ROCm v7中等(几步命令)次选
AMD (Windows)ROCm v6.1 Preview较难(建议用 WSL2)一般
Apple Silicon无需配置最简单Mac 用户首选

GPU 加速这事儿,一次配置,长期受益。从 CPU 的”能跑”到 GPU 的”好用”,体验差距真的很大。你的显卡是哪个平台?配置过程中遇到什么问题?欢迎在评论区分享,我看到会尽量回复。

Ollama GPU 加速配置

三平台 GPU 加速配置完整流程

⏱️ 预计耗时: 30 分钟

  1. 1

    步骤1: 确认显卡型号和驱动

    根据你的显卡类型选择验证方式:

    - NVIDIA:运行 nvidia-smi 查看显卡信息
    - AMD:运行 rocminfo 确认 ROCm 识别
    - macOS:无需验证,Metal 自动启用
  2. 2

    步骤2: NVIDIA CUDA 配置

    最简单的方案,装好驱动即可:

    1. 安装驱动:sudo apt install nvidia-driver-535
    2. 重启系统
    3. 验证:nvidia-smi 应显示显卡信息
    4. Ollama 自动检测 CUDA,无需额外配置
  3. 3

    步骤3: AMD ROCm 配置(Linux)

    需要安装 ROCm v7:

    1. 安装:sudo apt install amdgpu-install
    2. 配置:sudo amdgpu-install --usecase=rocm
    3. 权限:sudo usermod -aG render,video $USER
    4. 重启后验证:rocminfo
    5. 老显卡可能需要:export HSA_OVERRIDE_GFX_VERSION=10.3.0
  4. 4

    步骤4: 验证 GPU 加速生效

    运行模型时确认 GPU 正在工作:

    - 运行 ollama ps 查看 GPU 使用率
    - NVIDIA:nvidia-smi -l 1 实时监控
    - AMD:rocm-smi -a 实时监控
    - macOS:Activity Monitor 查看 GPU History
  5. 5

    步骤5: 多 GPU 环境配置

    指定使用哪些显卡:

    - NVIDIA:export CUDA_VISIBLE_DEVICES=0,2
    - AMD:export ROCR_VISIBLE_DEVICES=0,1
    - 将环境变量加到 ~/.bashrc 持久化

常见问题

Ollama 支持哪些 GPU 平台?
Ollama 支持三大平台:NVIDIA(CUDA,Compute Capability 5.0+)、AMD(ROCm v7 Linux / v6.1 Windows Preview)、Apple Silicon(Metal 自动启用)。其中 NVIDIA 配置最简单,Apple Mac 用户零配置。
我的显卡显存不够怎么办?
显存决定能跑多大的模型:7B 模型需 5-6GB,14B 需 10-12GB,70B 需 40GB+。显存不足时可选择:1. 使用更小的量化模型;2. 让 Ollama 自动使用 CPU 补充内存(速度会下降);3. 使用多张显卡分担。
如何确认 GPU 加速是否生效?
运行模型时执行 ollama ps 命令,查看 GPU 使用率。NVIDIA 用户可用 nvidia-smi -l 1 实时监控显存占用。如果看到 GPU 使用率上升,说明加速生效。
AMD 老显卡(如 RX 580)能用吗?
部分老显卡可以通过环境变量强制启用。设置 export HSA_OVERRIDE_GFX_VERSION=10.3.0 强制使用 gfx1030 兼容模式。但这不是所有情况都有效,需要自行测试。
Docker 容器里怎么使用 GPU?
NVIDIA 需要安装 nvidia-container-toolkit,然后配置 Docker runtime。启动容器时加 --gpus all 参数。AMD 容器 GPU 配置更复杂,建议直接在宿主机运行 Ollama。
Apple Silicon 的 MLX 后端怎么启用?
运行模型时加 --backend mlx 参数,如 ollama run llama3 --backend mlx。MLX 需 32GB+ 统一内存,且只有部分模型支持。性能提升约 93%。
报错 'no compatible GPUs were discovered' 怎么办?
依次排查:1. 驱动是否安装(nvidia-smi 或 rocminfo);2. 驱动版本是否过低(NVIDIA 需 450+);3. Docker 容器是否配置 GPU 访问;4. AMD 是否缺少 amdgpu 驱动。

12 分钟阅读 · 发布于: 2026年4月25日 · 修改于: 2026年4月25日

相关文章

BetterLink

想持续收到这个主题的更新?

你可以直接关注作者更新、订阅 RSS,或者继续沿着系列入口往下读,避免下次又回到搜索结果重新找。

关注公众号

评论

使用 GitHub 账号登录后即可评论