多卡 3090 是消费级阵营里"用预算换显存容量"的主流路线:4 张 3090 = 96GB 显存,能装下 70B 量化模型还留长上下文空间。但多卡推理的并行方式(TP/PP/TP+PP)选错,速度会被 PCIe 通信开销吃掉大半。这篇把公开的 4 卡实测数据、并行策略选择逻辑、以及多卡系统的稳定性坑整理成决策清单。

一、先算账:多卡 3090 的钱花在哪

卡数 总显存 能装的模型(Q4_K_M) 典型用途
1 张 24GB 32B 紧、70B 需 offload 中小模型主力
2 张 48GB 70B Q4 完整装下 70B 档 + 长上下文
4 张 96GB 70B 宽裕 / 128B 档可试 大模型 + 高并发服务

核心逻辑:多卡买的是"容量",不是"单请求速度"。单条请求的 decode 速度不会因为卡多就翻倍(受互连带宽限制),多卡的价值体现在:① 装下单卡装不下的模型;② 高并发场景下吞吐接近线性提升。

二、4 卡实测:TP vs PP vs TP+PP(Llama-3-8B,PCIe 4.0 互连,vLLM v0.6.4)

社区公开的 4×RTX 3090 实测(vLLM,高并发时延测试):

并行方式 启动命令 并发 100 时 GPU 利用率 结论
PP 流水线并行 --pipeline-parallel-size 4 --tensor-parallel-size 1 40-60% 利用率最低
TP 张量并行 --tensor-parallel-size 4 80-90% 利用率最高
TP+PP 混合 --pipeline-parallel-size 2 --tensor-parallel-size 2 50-60% 并发 200 时比 TP 低 10%

PCIe 4.0 互连场景下,张量并行的端到端时延和 GPU 利用率全面优于 PP 和混合并行。原因:TP 每层要做 AllReduce/AllGather 通信(最高频,每层 2 次),对互连带宽要求最高;PCIe 4.0 x16 的单链路带宽(约 32GB/s 双向)相对显存带宽(936GB/s)是明显瓶颈,但 TP 的通信模式比 PP 的跨卡流水更友好,利用率更高。

决策规则:

三、多卡系统必踩的坑(按翻车频率排序)

1. PCIe 插槽带宽——最常见的"隐形"瓶颈

3090 是 PCIe 4.0 卡,插在只协商出 3.0 x4 的槽上,带宽直接砍到 1/4。症状:GPU 利用率周期性波动、训练/推理时显存拷贝等待拉长。装卡前用 nvidia-smi -q 或 lspci -vv 查实际协商速率,主板说明书上标的 x16 不等于实际协商出的 x16。

2. NVLink 不是多卡推理的必需品

3090 带 NVLink 接口(2 卡可互联,单向 225GB/s),但对 LLM 推理来说,PCIe 4.0 通常够用——LLM decode 阶段的通信量远小于训练时的 AllReduce 流量。NVLink 的价值主要在:双卡 TP 跑超大 batch、训练场景。普通推理部署不要为 NVLink 桥接多花钱。

3. 供电与散热要按 N 张卡重新算

4 张 3090 = 4×350W = 1400W 纯显卡功耗。电源建议 1600W 以上(留 30% 余量),每张卡独立 8pin 或双 8pin 供电,别用转接头。风道按"4 条直吹通道"设计,开放式机架比封闭机箱好——显存过热会降频,直接吃掉 tokens/s。

4. 驱动掉卡:长期运行的头号杀手

7x24 小时运行的多卡机器,驱动崩溃/掉卡是最高频故障。对策:

5. 跨厂商混插没有意义

N 卡 + A 卡混插没有可用的互连方案,等于两张卡各跑各的。多卡扩展只在同厂商同架构内做,A 卡侧同理(跨厂商多卡无互连,见本站 R9700 专文)。

四、框架选择:Ollama 还是 vLLM?

场景 推荐框架 原因
单卡/双卡、个人使用 Ollama / LM Studio 部署简单,单请求速度够用
多卡高并发、对外服务 vLLM / SGLang 多 GPU 高并发场景的吞吐远超 Ollama
需要 TP/PP 精细控制 vLLM 启动参数直接指定并行方式

Ollama 定位是轻量快速部署,多卡高并发场景不如 vLLM/SGLang——4 卡 3090 做推理服务,上 vLLM 是社区一致结论。

五、成本-性能总结

一句话:多卡 3090 买的是容量和并发吞吐,不是单请求速度;PCIe 场景 TP 优先,供电散热按 N 倍重算,专业驱动 + UPS 是长期运行的底线配置。