Skip to main content
PromptQuorumPromptQuorum
主页/本地LLM/多GPU本地LLMs 2026:在2+个GPU上运行70B模型(vLLM和Ollama)
Hardware & Performance

多GPU本地LLMs 2026:在2+个GPU上运行70B模型(vLLM和Ollama)

·阅读约11分钟·Hans Kuepper 作者 · PromptQuorum创始人,多模型AI调度工具 · PromptQuorum

双RTX 4090(合计48 GB)运行Llama 3.3 70B,速度约100 token/秒——仅比理论上的单个48 GB GPU慢5–10%。这是2026年70B模型最具成本效益的多GPU设置。

使用多个GPU可以运行单个GPU的VRAM无法容纳的70B+模型。双RTX 4090(合计48 GB)在Q4量化下运行Llama 3.3 70B,速度约为100 token/秒——仅比理论上的单个48 GB GPU慢5–10%,因为GPU间通信产生开销。截至2026年4月,vLLM(张量并行)和Ollama(自动层分割)都已开箱即用地支持多GPU。NVLink可将开销降低到3–5%,但在消费级RTX卡上不可用——PCIe 4.0/5.0对大多数双GPU设置足够。

演示文稿: 多GPU本地LLMs 2026:在2+个GPU上运行70B模型(vLLM和Ollama)

幻灯片涵盖:双RTX 4090(合计48 GB)如何以仅5-10%的开销以100 tok/秒运行Llama 3.3 70B、vLLM张量并行设置(--tensor-parallel-size 2)、Ollama自动GPU分配、NVLink与PCIe带宽对比(900 GB/秒对64 GB/秒)、8行GPU性能表及5个常见多GPU错误。下载PDF作为多GPU LLM推理参考卡片。

浏览以下幻灯片或下载PDF以供离线参考。 下载参考卡(PDF)

关键要点

  • 多GPU:将大模型分割到2+个GPU上。示例:70B模型均匀分割到2× RTX 4090 = 总计48 GB VRAM。
  • 速度损失:~5-10%(GPU间通信开销)。
  • 最适用于: 70B+模型,高并发服务(50+并发用户)。
  • 自动化: 现代工具(vLLM、Ollama、llama.cpp)自动检测多GPU。
  • 截至2026年4月,这是生产部署的标准做法。

层分割和张量并行如何工作?

70B Transformer模型有80层。 使用层分割,Ollama可能会这样放置:

  • GPU 1:第1-40层
  • GPU 2:第41-80层

生成token时,它通过GPU 1流向GPU 2,然后回到GPU 1以生成下一个token。通信开销最小。

2个GPU上的层分割:80层的70B模型分布(GPU 1第1–40层,GPU 2第41–80层),GPU间PCIe通信增加~10%开销(双RTX 4090上~100 tok/sec)。
2个GPU上的层分割:80层的70B模型分布(GPU 1第1–40层,GPU 2第41–80层),GPU间PCIe通信增加~10%开销(双RTX 4090上~100 tok/sec)。

💡: 专业提示:层很轻——重要的是GPU间通信速度。第1–40层在GPU1上,第41–80层在GPU2上意味着每个token有一次GPU传输。这是为什么NVLink重要。

vLLM多GPU设置

vLLM开箱即用地支持张量并行,只需一个命令。 使用`--tensor-parallel-size`标志指定GPU数量:

bash
# 在2个GPU上运行70B模型
vllm serve meta-llama/Llama-3.1-70B \
  --tensor-parallel-size 2 \
  --gpu-memory-utilization 0.95 \
  --port 8000

# API现在位于 http://localhost:8000/v1
# 相同API,自动多GPU处理
vLLM设置4步:验证GPU(nvidia-smi)→ 安装vLLM(pip install)→ 使用--tensor-parallel-size 2启动 → 验证API在localhost:8000/v1。
vLLM设置4步:验证GPU(nvidia-smi)→ 安装vLLM(pip install)→ 使用--tensor-parallel-size 2启动 → 验证API在localhost:8000/v1。

⚠️: 警告:两个GPU必须具有相同的VRAM。如果配对RTX 4090(24 GB)+ RTX 4080(16 GB),vLLM将被限制为每个GPU 16 GB。使用匹配的GPU以获得最佳性能。

Ollama多GPU设置

Ollama自动检测多GPU并自动分割:

1. 正常运行Ollama:`ollama serve`

2. Ollama检测2+个GPU并自动分割模型

3. 无需配置——它就是有效的。

通过`nvidia-smi`或`rocm-smi`验证两个GPU都在加载。

🛠️: 最佳实践:通过运行`nvidia-smi`验证多GPU设置是否有效,并检查两个GPU内存使用情况。如果只有一个GPU在加载,Ollama可能未检测到第二个GPU。检查驱动版本,如果需要升级。

2个GPU的性能

SetupModelSpeedCost
1× RTX 4090 (24GB)7B150 tok/sec$1,800
1× RTX 4090 (24GB)70B无法运行$1,800
2× RTX 4090 (48GB)70B Q4100 tok/sec$3,600
2× RTX 4090 (48GB)70B Q590 tok/sec$3,600
1× RTX 5090 (32GB)70B Q440–50 tok/sec$2,000
2× RTX 5090 (64GB)70B Q8120 tok/sec$4,000
2× RTX 5090 (64GB)405B Q425–35 tok/sec$4,000
RTX 6000 Ada + RTX 409070B FP16110 tok/sec$6,800
性能表:RTX 4090($1,800运行7B @ 150 tok/sec)到双RTX 5090($4,000运行70B Q8 @ 120 tok/sec)的8个GPU配置。70B最优配置:2× RTX 4090 @ 100 tok/sec($3,600)。
性能表:RTX 4090($1,800运行7B @ 150 tok/sec)到双RTX 5090($4,000运行70B Q8 @ 120 tok/sec)的8个GPU配置。70B最优配置:2× RTX 4090 @ 100 tok/sec($3,600)。

📌: 关键点:两个RTX 4090在70B模型上提供约100 tok/sec——大约是单GPU速度的90%,因为5–10%通信开销。RTX 5090(32 GB GDDR7,2026年1月发布)改变了游戏规则:单个5090在40–50 tok/sec下运行70B Q4,无需分割。双5090(64 GB合计)是首个能处理405B Q4模型的消费级设置。

何时使用多GPU?

当您需要70B+模型或高并发服务时,多GPU具有成本效益。 在以下情况下使用多个GPU:

  • 您需要运行70B+模型。
  • 您服务50+并发用户(批处理)。
  • 您想同时运行多个13B模型。
  • 您运行生产服务(不是实验)。
决策矩阵:如果需要70B+模型(✓)或服务50+并发用户(✓),使用多GPU。否则(✗),在投资第二块GPU前先尝试更小的模型。
决策矩阵:如果需要70B+模型(✓)或服务50+并发用户(✓),使用多GPU。否则(✗),在投资第二块GPU前先尝试更小的模型。

💡: 专业提示:对于70B模型的实验,先尝试单GPU CPU卸载(RTX 4090上8–10 tok/sec)。一旦确认生产需求,投资第二个RTX 4090以实现多GPU设置(100 tok/sec)。

常见多GPU错误

  • 期望2个GPU有2倍加速。 您获得单GPU速度的约90%(GPU通信5-10%开销)。
  • 假设GPU必须相同。 您可以混合RTX 4090 + RTX 4080,但vLLM将受到较慢GPU的限制。
  • 不使用NVLink通信。 没有NVLink,多GPU通信更慢。NVLink在消费级GPU上很少见。
  • 忽视PCIe带宽。 GPU间通信通过PCIe进行,限制带宽(PCIe 4.0上约16 GB/sec)。
  • 在尝试单GPU选项之前购买第二个GPU。 在投资$1,800+购买第二个RTX 4090之前,尝试:(1) Q4量化而不是Q5/Q8(减半VRAM),(2) 通过Ollama的CPU卸载(单4090上70B的8–10 tok/sec),(3) RTX 5090 32 GB单卡(无分割运行70B Q4,$2,000)。多GPU应该是最后的优化,不是第一选择。

⚠️: 警告:匹配GPU型号对一致的性能至关重要。不匹配的GPU(例如4090 + 4080)会产生瓶颈,其中较慢的卡决定系统速度。在生产中,始终配对相同的GPU。

常见问题

💬: 您知道吗?NVLink带宽(900 GB/sec)vs PCIe带宽(64 GB/sec)是多GPU性能的隐藏因素。具有NVLink的A100/H100专业GPU可以实现近似线性扩展(例如2个GPU实现2倍加速)。消费级RTX卡限制在PCIe上,导致5–10%开销。

我何时应该为本地LLM使用多个GPU?

当单个GPU对您的目标模型VRAM不足时,使用多个GPU。两个RTX 4090(合计48 GB)在Q5量化下以约100 tokens/sec运行70B模型。带卸载的单GPU仅为同一模型实现8–10 tokens/sec。当您已经拥有或可以获得第二个GPU时,多GPU对70B+模型具有成本效益。

vLLM张量并行如何跨GPU工作?

vLLM使用张量并行(`--tensor-parallel-size 2`)跨GPU分割模型层。每个GPU持有一半的模型权重矩阵;计算并行发生,结果通过NVLink或PCIe通信。NVLink(NVLink 4.0:900 GB/sec双向)对于GPU间通信显著快于PCIe(64 GB/sec)。

NVLink对LLM推理有显著差异吗?

NVLink相对于PCIe为需要频繁GPU间通信的大模型提高吞吐量10–30%。对于跨两个GPU分割的70B模型,NVLink将通信开销从~15%降低到~3–5%。消费级RTX卡使用PCIe;NVLink在专业A100/H100 GPU上可用。对于家庭使用,PCIe足够。

我可以混合不同的GPU型号(例如RTX 4090 + RTX 4080)进行层分割吗?

技术上可以——vLLM和llama.cpp支持混合GPU设置。实际上,较慢的GPU成为瓶颈。4090+4080对的性能更接近两个4080而不是两个4090。强烈建议为生产部署匹配GPU型号。

70B和405B模型需要多少个GPU?

70B @ Q4:适合2× RTX 4090(需要35 GB,可用48 GB)。70B @ Q8:需要4× RTX 4090(需要70 GB)。405B @ Q4:需要4× RTX 4090(需要200 GB——勉强适合)。对于405B,推荐的平台是专业A100 80GB×4(合计320 GB)。

层分割vs单GPU的速度损失是多少?

层分割增加5–10%开销来自GPU间通信。两个RTX 4090运行70B模型实现约100 tokens/sec——大约是单个理论48 GB GPU能达到的90%。这远好于CPU卸载(8–10 tokens/sec)或单个4090运行不可能的70B模型。

我可以在单个RTX 5090上无多GPU运行70B吗?

可以——RTX 5090(32 GB GDDR7,2026年1月)在Q4_K_M量化下适合Llama 3.3 70B(~40 GB与KV缓存在短上下文,32 GB下4K上下文处于紧张状态)。性能:40–50 tok/sec。对于更长上下文(32K+)或更高量化(Q5+)的70B,仍需要双GPU。5090消除了短上下文下70B Q4的多GPU需求。

对于多GPU LLM设置,PCIe 5.0值得吗?

PCIe 5.0相对于PCIe 4.0的~128 GB/sec带宽增加一倍到64 GB/sec。对于双GPU 70B推理,这将通信开销从~10%降低到~6–7%。改进明显但非革命性——NVLink(900 GB/sec)仍然是实现近似线性扩展的唯一方式。对于消费者构建,如果购买新的,建议使用PCIe 5.0主板,但仅为多GPU升级PCIe 4.0不具有成本效益。

来源

关于第三方事实的说明

本文引用了第三方AI模型、基准测试、价格和许可证。AI领域变化迅速。基准分数、许可条款、模型名称和API价格可能在写作时间和您阅读时之间发生变化。在根据本文做出部署或合规决策之前,请在每个提供商的官方来源核实当前数据:Hugging Face模型卡用于许可证和基准测试,提供商网站用于API定价,EUR-Lex用于当前GDPR和EU AI法案文本。本文反映截至2026年5月的公开可用信息。

使用本地LLM、您自己的API密钥或两者运行PromptQuorum — 您来决定使用哪个后端。

加入PromptQuorum等待列表 →

← 返回本地LLM