常见问题 / 装与跑

多卡到底怎么拆层?加第二张卡值不值?

两种拆法:llama.cpp 拆层(默认,层分给不同卡,带宽可相加)与 vLLM 张量并行(切矩阵,通信吃 PCIe)。加卡最稳的收益是「装得下更大的模型」,速度翻倍要看互联。

先分清两种多卡:① **拆层(layer split)**——llama.cpp 的默认行为,`--split-mode layer` 把不同的层放到不同卡上,权重读取带宽可以相加;用 `--tensor-split` 指定比例。② **张量并行(tensor parallel)**——vLLM 的 `--tensor-parallel-size N`,把一个矩阵切开分到多卡,每层都要通信,互联不够快就白搭。

速度不会翻倍,站内实测给了几组对照:① NVIDIA RTX 3090 24G 单卡 TP=1 Q4_K_M 46.9 tok/s(ctx 32K),同一基准库目录横切的 TP2 / TP4 单流是 76.4 / 78.7——加卡从 1 张到 2 张涨一截,从 2 张到 4 张几乎不再涨。② 2×3090 NVLink 跑 MiniCPM-V-4.7-35B int4,TP2 plain 单流 172.2 tok/s;同样两张 3090 但走 PCIe 互联,Qwen3.8-27B AWQ 32K 只有 45 tok/s。③ 2×P100 16G(无 NVLink、无 P2P,第二张卡挂在芯片组后走 PCIe 3.0 x4)跑 Qwen3.8-27B UD-Q6_K,plain decode 31.1 tok/s,开 MTP 后 54 tok/s。

上下文越长,多卡的差距越难看:同一条 2×3090 PCIe 的曲线,32K 是 45 tok/s,524K 掉到 6 tok/s,作者标「稳定」。KV 是每层每 token 都摊的,加卡不改变这个斜率。

加卡最实在的收益是容量:站内 2×NVIDIA RTX 5070 Ti 16G TP2 跑 Qwen3.8-27B NVFP4,64K 上下文单流 64 tok/s,每卡显存明细是权重 11.3 GiB + KV 1.51 GiB + CUDA graphs 0.14 + 激活 1.43,合计 14.4/15.47 GiB——这是「消费级 24G 总显存跑新代际 27B」的代表配置。另一头,4×3090 TP4 跑 Ling-3.0-flash INT4 单流 100.43 tok/s,16 并发聚合 295.94 tok/s(折合每请求 18.5 tok/s)——单流和聚合不是一回事,别混用。

怎么配(按目的):① 只是想装下更大的模型 → 拆层最省事,两张同卡容量直接相加;② 想更快 → 看互联有没有 NVLink,没有 NVLink 的 PCIe 多卡通常不如换一张大卡;③ 笔记本别指望外接多卡提速,通道更窄;④ 上手顺序:先用一张卡把模型跑通,再加第二张,先试 llama.cpp 的 `--split-mode layer --tensor-split 1,1`,再考虑 vLLM 的 TP。

条目性质:本站依据自身数据模型与公开架构常数撰写。 有错请直接告诉我们,见关于页。

相关问题

llama.cpp、Ollama、LM Studio、vLLM 我该用哪个?想控制显存和参数用 llama.cpp;想一条命令搞定用 Ollama;想要图形界面用 LM Studio;想要高并发服务很多人用 vLLM。新手第一站推荐 LM Studio。评测里的 tok/s 是单流还是并发?为什么同一张 4090 有人报 30、有人报 400?单流是你一个人对话时每秒出几个字;并发是同时服务很多人时每秒总共出几个字。后者能高一个数量级,两种数字放在一起比一定是误导。笔记本能外接显卡跑大模型吗?值得买显卡坞吗?能跑,瓶颈在接口不在显存:TB3 外接 12G 卡实测 25 tok/s(单源)。适合已有大显存的旧卡 + 轻薄本;想要速度和 24G 以上,外接坞给不了。二手卡还是全新卡?本地跑大模型怎么选?二手显存卡性价比明显更高(3090 二手 2026-11-03 起 5300、4090 二手 2026-11-10 21694),代价是无保修与成色不明;预算够就全新,预算卡死就二手 + 验卡。

装与跑 · 其他条目

从 0 到跑通第一个模型,具体要走几步?模型文件去哪下载?GGUF、safetensors、MLX 有什么区别?llama.cpp、Ollama、LM Studio、vLLM 我该用哪个?要占多少硬盘?要不要 SSD?Windows 还是 Linux?差别有多大?首次部署要不要上 Docker?
← 二手卡还是全新卡?本地跑大模型怎么选?回到全部 40 条首次部署要不要上 Docker? →
这条内容有帮助吗?