ollama windows gpu 启动

模型与算力

给 Windows 上跑 Ollama 的人一套排查顺序:怎么确认显卡被认出来、显存够不够、以及不生效时先查哪一步。

Windows 上装完 Ollama,任务管理器里显卡风扇一动不动、输出速度跟纯 CPU 差不多,这是最常见的卡点。问题通常不在模型本身,而在驱动、显卡识别顺序和显存这几层。下面按「先确认有没有用上、再确认用得对不对、最后确认跑得稳不稳」的顺序给一套可执行动作,每一步都告诉你怎么看结果、什么情况下这套判断不成立。

Windows 上装完 Ollama,很多人遇到的情况是:任务管理器里显卡风扇一动不动,输出速度和纯 CPU 跑差不多。这通常跟模型本身没关系,问题多半卡在驱动、显卡识别和显存这三层。下面按「先确认有没有用上、再确认用得对不对、最后确认跑得稳不稳」的顺序,给一套能照着做的排查动作。

每个步骤都附带判断标准和验证方式,告诉你怎么看结果、什么情况下这套判断不成立。整套流程默认你用的是 NVIDIA 独显装好官方驱动,AMD 和 Intel 核显用户思路一样,只是工具和日志字段不一样。

第一步:确认 Ollama 到底有没有用上显卡

最直接的办法是跑一个模型的同时打开任务管理器,切到性能页看 GPU 的「专用显存」有没有持续波动。有占用说明走的是显卡,显存曲线几乎是平的,基本就是 CPU 在扛。这一步不需要懂技术,看曲线就能判断。

  • 任务管理器看 GPU 占用和专用显存:持续占用才算真用上,闪一下就掉多半是加载过程,不代表推理在显卡上。
  • 翻 Ollama 启动日志里关于显卡发现、驱动版本、显存容量的那几行,认不到卡时这里会直接写原因。
  • 用 nvidia-smi 之类的厂商工具看进程列表,确认 ollama 相关进程挂在显卡上,而不是只出现在显卡驱动列表里。
  • 多开几个测试:先跑小模型确认链路通,再换你要用的大模型,避免把「显卡没用上」和「模型太大跑不动」混在一起。
专用显存
任务管理器里单独列的那一项,比「共享 GPU 内存」更能反映推理是否真在显卡上跑。
进程列表
nvidia-smi 里能看到每个进程占了多少显存,用来确认 Ollama 是不是真的挂上去了。
启动日志
Ollama 服务启动时打印的显卡发现信息,认不到卡会在这里写明具体原因。

第二步:驱动和运行库版本对不上的典型表现

驱动版本过旧是最隐蔽的坑,它不会报错,只会让 Ollama 默默回退到 CPU 跑。处理方式很简单:先把显卡驱动更新到厂商当前稳定版,再重跑测试。别拿测试版驱动当基线,不然排查时会多一个变量。

  1. 确认设备管理器状态打开设备管理器看显示适配器,如果有黄色感叹号或被识别成基础显示设备,先修这个,任何加速都无从谈起。
  2. 更新到稳定版驱动到显卡厂商官网下载当前稳定版驱动,安装后重启,再回任务管理器看显存占用是否正常。
  3. 别手动改环境变量同一台机器装过多个 CUDA 相关组件时,以 Ollama 自带的运行库为准,手动指向别的版本反而容易冲突。
  4. 重测并对比用同一个模型、同一段输入跑两次,观察更新驱动前后的输出速度变化,确认改动真的生效。

有一个情况要提前说清楚:如果显存本来就不够装下你要跑的模型,换驱动也救不了。这时候先做下一步的显存核对,别在驱动上死磕。

第三步:显存够不够,决定你能跑多大、多快

显存和模型大小的关系,核心是把「模型参数量 + 量化档位」跟显卡显存对上。小显存优先选更低的量化档位,牺牲一点输出质量换能跑起来,比跑不起来强。显存刚好卡在临界值时最难受,速度会明显掉一档,因为一部分层被放在内存里来回搬。

显存情况典型表现先做什么
显存明显富余推理全程在显卡上,速度稳定选更高量化档位换质量
显存刚好卡住速度忽快忽慢,有时掉档降一档量化,或换小一点的模型
显存明显不够大量层回落到内存,速度接近纯 CPU换更小模型或更低量化档位

具体某个模型占多少显存、不同量化档位怎么取舍,到 /models/deploy 的部署测算和 /models 模型库按你手上的卡核对当时的数字。不确定该给这台机器配什么卡时,/compute/gpus 的加速卡规格库和 /compute/sizing 的按模型估算能帮你把范围缩下来。

第四步:多卡选择与不生效时的排查顺序

机器上有多张卡时,默认策略未必是你想用的那张。先确认 Ollama 选的是哪张卡,再决定要不要手动指定。多卡叠加不等于速度翻倍,要看模型能不能被切开;小模型在单卡上跑得更快,也是完全正常的结果。

  • 排查顺序固定成:驱动 → 显卡是否被识别 → 显存是否够 → 模型量化档位 → 重启服务,跳步排查只会浪费时间。
  • 改完配置记得完整重启 Ollama 服务再测,热加载不生效是常见的误判来源。
  • 多卡机器先确认实际用的是哪张卡,再决定要不要手动指定,别默认系统会挑对。
  • 测试用同一段输入、同一个模型,避免把模型差异当成配置差异。

如果四步走完还是不生效,把启动日志里的显卡那几行完整看一遍,对照排查顺序看卡在哪一环。日志通常已经写清楚了原因,只是被淹没在其他输出里。

下一步把这套顺序走一遍还搞不定,可以到站内的中转站导航和测速页面看看别人用什么配置跑同类模型,再回来对照你的显卡规格做取舍。

常见问题

任务管理器显示显卡占用很低,是不是就没用上 GPU?

不一定。短提示词、小模型的单次请求本来就吃不满显卡,占用曲线是尖峰状而不是持续高位。判断依据应该是启动日志里有没有识别到显卡,以及同样提示词下输出速度是否明显快于纯 CPU 的情况,而不是看瞬时百分比。连续跑几次长一点的请求再看曲线更准。

显存不够会直接报错,还是会悄悄变慢?

两种都可能。完全装不下时通常直接报错或加载失败;只差一点点时不会报错,而是把部分计算放到内存里,速度掉得很明显但你不容易第一时间发现。所以跑起来慢的时候,先对比显存占用和模型需求,再怀疑别的环节。到 /models/deploy 按你的卡和模型核一遍当时的测算口径最省事。

换了显卡或者更新了驱动之后,需要重装 Ollama 吗?

一般不需要,重启服务让它重新做一次设备发现就行。只有在驱动大版本跨越、或者之前装过互相冲突的运行库时,才考虑重装。重装前先备份模型目录,避免又要重新下载一遍。改完任何一项配置都完整重启服务,再跑同一个提示词做前后对比,这样才知道是哪一步起了作用。

本文依据各平台公开文档与官方公告整理,只做中文归纳;具体做法、参数与限制以官方文档为准。