硬件拼凑完毕,接下来就是给这堆“电子垃圾”注入灵魂的时候了。如果你以为插上电就能跑,那图样图森破了。软件调优,才是区分“新手”和“垃圾佬”的分水岭。
一、操作系统与驱动:打地基,不能歪
我的主角是两张RTX 2080 Ti22G。虽然它们身经百战,但毕竟年纪大了,对最新的CUDA 13 支持得有点“力不从心”。而现在的llama.cpp更新速度快得像换女朋友,通常只支持 CUDA 12.4 或 13.3。所以,安装包含CUDA 12.4的NVidia 551.23版本驱动。这是目前的“黄金搭档”,稳如老狗。
如何确认NVLink 真的在工作?很多兄弟买了桥接器,插上了,以为就可以了。错!
1. 图形化检查:打开NVIDIA 控制面板,如果能看到“配置Surround、SLI、PhysX”菜单,且里面显示SLI,恭喜你成功了一半。没生效就手工改为“最大化3D性能”。
2. 命令行硬核检查:
打开CMD 或PowerShell输入:nvidia-smi nvlink --status(也可以简写为 -s)
如果输出了GPU 连接状态和带宽信息(如下图),那就说明NVLink已启用。这时候,你可以放肆地笑了。

注意:nvidia-smi.exe的路径可能会藏得比较深,我是先找到这个路径:
C:\Windows\System32\DriverStore\FileRepository
然后搜索nvidia-smi.exe找到的。
二、运行器与模型:选谁当大脑?
市面上主流的运行器有三个“门派”:
Ollama:简单粗暴,开箱即用,但有点“吃资源”,像个憨厚的大力士。
vLLM:高并发王者,适合搞服务,但对于我们这种单机玩票的,配置稍显复杂。
llama.cpp:垃圾佬首选!命令行模式,能极限压榨每一滴性能。虽然并发差点意思,但胜在灵活、轻量、可控。
重要提示:一定要下载llama.cpp对应CUDA版本的编译包!没有CUDA加速,大模型跑起来就像“大木莫刑土”一样慢,让你怀疑人生。
模型选择:
经过反复横跳,我锁定了Qwen3.6-27B作为主模型。至于量化为什么选Q5?我在Q5和Q6之间纠结了三天三夜,最后感觉Q5的速度会快那一丢丢,而智商损失几乎感觉不到。对于2080Ti来说,速度就是正义!
至于备选模型,我毫不犹豫地选择了Qwen3.6-35B-A3B-Q4_K_M,用来应付那些速度比质量重要,需要“超常发挥”的时刻,比如……恩恩你懂的。
我在hf-mirror.com(国内用户值得拥有)上找了支持MTP和abliterated的大模型文件—DDDD—约18.5G,加上KV Cache(q5起步,最好q8),实际吃显存约34G,在双2080Ti上跑起来,So Easy!
三、参数详解:调参如炼丹
直接给出我的启动脚本,每一个参数都是血泪教训换来的。你可以直接复制,但建议读懂它,因为这才是垃圾佬的乐趣。
llama-server.exe ^
-m "C:\Models\Qwen2.5-32B-Q5_K_M.gguf" ^##模型路径,指向你的.gguf文件
--main-gpu 0 ^##指定主显卡为 0 号卡。虽然双卡互联,但得有个老大
--ngl 99 ^##把模型层加载到GPU的层数。99是Magic Number,表示尽可能多
--tensor-split 0.5,0.5 ^##张量分配规则,这里平分就好了
--parallel 1 ^##并发数1。垃圾佬服务器,一次只聊一个人,保证质量
--flash-attn on ^##开启 Flash Attention,提速神器,必开!
--n-cpu-moe 0 ^ ##将多少专家加载到CPU和内存。对27B这种稠密型大模型无效,对35B这种稀疏型必须。反正也不报错,放上省事。
--jinja ^##使用 Jinja 模板,让模型更懂你的 Prompt 格式
-c 262144 ^##上下文长度 256K
-t 12 ^##CPU线程数 12。E5 2673v3 是12核24线程,一般设为12
--cache-type-k q8_0 --cache-type-v q8_0 ^## KV Cache用Q8量化,保证精度
--spec-type draft-mtp ^##等灯等灯,重点来了!开启MTP投机解码。如果不支持MTP的大模型,一般可以选ngram-mod
--spec-draft-n-max 3 ^##猜测深度 3。一般设 3 就够,太高容易猜错反而拖慢
-b 512 -ub 256 ^##批处理数量
--temp 0.7 ^##温度系数。0.7 适合创作,0.3 适合写代码。按需调整。
--mlock --no-mmap ^##锁定内存,禁止交换。防止把数据换到硬盘,会卡成 PPT。
--host 127.0.0.1 --port 4321 --timeout 300##常规Web设置
其他优化策略:
TurboQuant:试过,但在 2080Ti上提速不明显,编译还麻烦。暂时弃用,等以后升级 3090 再说。
ThinkingCap:说实话本地部署不缺Token,用来省显存的话。现在我显存没那么紧张,所以吸引力不大。能提升生成速度吗?大佬们如果有什么建议,欢迎评论区明示!
四、最终效果:真香现场
经过一番折腾,最终生成速度约35-40 Tokens/S,长对话输出非常稳定,没有出现掉帧或卡顿,中间甚至速度有提升。说明显卡负载并未跑满,还有优化空间。或者是我模型选小了,格局不够大?
虽然比不上4090 的飞起,但对于一个“丐版”服务器来说,这性价比已算不错!
下一步优化计划:尝试本地编译,打造专属的llama.cpp,当然那是N久以后、垃圾佬结丹飞升后的事了!现在当然是开VSCode让它干活!诸位大能,下期再见!
夜雨聆风