ollama 调用 780M
本文最后更新于 2025年2月15日 晚上
最近安装了 ollama 试试本地跑大模型,直接安装了 ollama
以及 ollama-cuda
, 然后调用 ollama run deepseek-r1:32b
大概能有 3tps 的速度,主要卡点在 N 卡爆显存。后续听说可以用 AMD核显来跑,并且由于核显直接共享50%的内存,效果还可以,我有96G内存,核显能有48G左右的共享显存,因此不会爆显存了,打算试一下。
前置知识
开机自启与绑定端口
先提一点没用的知识。首先编辑 ollama 的 service文件,更改绑定的地址为 0.0.0.0
这样其他应用就可以调用 ollama 了。
1 |
|
在 [Service]
部分加一行
1 |
|
然后启动 ollama 并设置开机自启
1 |
|
查看输出速率
执行 ollama run deepseek-r1:32b
可以进入命令行交互界面,输入 /set verbose
可以开启 verbose 模式,每次交互完毕会展示一个统计结果,像下面这样,可以比较方便地看到输出速度。
1 |
|
在核显上跑 ollama
官方的 ollama是不支持 780M的,但是群友说有一个第三方分支 AMD_APU_GTT_memory 支持,在官方仓库下也有一个对应PR,我们只要用上游的 PKGBUILD打上这个 patch 即可。
- 对应的 PKGBUILD 放在我的 gist 仓库,
- 对应的二进制包也放在我的共享仓库。
安装好之后再在它的service文件添加一个新的环境变量HSA_OVERRIDE_GFX_VERSION
,并重启服务就可以了。注意780M值一定要是11.0.2
, 我试了其他的11.0.3
, 11.0.1
都不能启动。680M 可以试试这个 PR 里面的值。同时我还按照这个PR加了另外两个环境变量OLLAMA_MAX_LOADED_MODELS=1
和 OLLAMA_NUM_PARALLEL=1
(实际测试有没有好像都没有影响)。
1 |
|