2459 字
12 分钟
GPU 选型
2026-10-03
2026-10-09

前言#

第一篇列出了产品线,第二篇解释了显存、带宽、算力和互联。本篇只回答选型问题:指定模型、精度、上下文长度和并发量后,哪些卡能放下,速度是否达标,多卡和租赁是否值得。

本地推理#

先确定权重是否需要常驻显存,再按上下文和并发量核算 KV cache。允许 CPU 内存卸载时,小显存卡也能运行更大的模型,但要另行验证速度,不能直接套常驻显存的选型表。

模型规模门槛#

下面是单卡常驻权重的粗算,权重体积沿用上篇的估算,不包含 KV cache 和推理框架占用。具体能否运行还取决于量化格式与推理后端。

模型精度权重约占单卡选择
7BFP1614 GB16G 仅适合很短的上下文;24G 留余量
8BFP1616 GB24G 起更稳妥
14BQ4–Q6约 9–12 GB16G,仍需核对上下文
32BQ4约 20 GB24G 余量紧;32G 可容纳更多 KV cache
70BQ4约 42 GB48G 余量紧;也可评估双 24G 分片
70BFP8约 70 GB80G 余量紧;更大显存适合长上下文

以 Llama-3.1-70B 为例,KV cache 约 0.3 MB/token;单请求 8k token 就多占约 2.5 GB,多路并发还要乘以同时驻留的请求数。70B Q4 的 42 GB 权重放到 48G 卡上,再加这一笔和框架开销,就不能把剩下的 6 GB 全当可用上下文。买卡前先用目标模型和推理后端实际加载一次,并按计划的上下文长度与并发数压测。

交互体验#

单人 decode 可以先用 带宽 × 0.6 ÷ 权重体积 粗估,不要把结果当成实测吞吐。假设同一个 32B Q4 模型权重约 20 GB,暂不计 KV cache 读取和其他开销:

卡标称带宽单流估算
RTX 40901008 GB/s约 30 t/s
RTX 50901792 GB/s约 54 t/s

两张卡都能装下权重,但交互速度并不相同。首字延迟还包括 prefill,长 prompt 不能只看 decode;长上下文、多路请求也会增加 KV 读取。量化能减少权重读取量,但不同后端的解量化开销不同,最终以目标模型的实测结果为准。

多卡推理#

两张 24G 卡并不是一张 48G 卡:模型按张量并行切分后,每张卡仍要留出 KV cache、运行时和通信缓冲区。70B Q4 权重约 42 GB,平均每卡约 21 GB,双 24G 的剩余空间很紧,长上下文可能需要更大的卡或更低位量化。

张量并行每层都有卡间通信,延迟取决于拓扑、并发量和框架实现。8×5090 的公开测试里,高并发下 PCIe 通信占 step 时间的 3%–6%,不能据此推断双卡单请求或训练也只有这点开销。先对比单卡与多卡在目标 batch 下的吞吐和延迟,再决定是否为了容量接受互联成本。

微调与训练#

微调门槛#

LoRA/QLoRA 只更新适配器,但底座权重、激活值和梯度计算仍占显存。32B Q4 的底座就约 20 GB;要在 24G 卡上做 QLoRA,还得控制序列长度、micro-batch,并使用激活检查点等省显存手段。先在目标训练配置上跑一个 step,记录峰值显存,而不是按推理能加载就判断能微调。

全参微调要另算 AdamW 状态。按 FP16 权重和梯度各 2 字节、FP32 master weights 4 字节、两份 FP32 优化器状态共 8 字节估算,每参数约 16 字节。7B 模型仅这些状态就约 112 GB,尚未计激活值和通信缓冲区。A100 80G 单卡装不下;多卡可用 ZeRO 分片,或者降低优化器状态精度并将部分状态卸载到内存,但后者会增加主机内存需求和传输时间。

多卡训练#

互联预算取决于并行方式,而不是”训练一定要 NVLink”:

并行方式卡间传输选型影响
数据并行通常每次反向传播后同步梯度;梯度累积配合延迟同步可减少次数先测通信占 step 时间的比例,PCIe 未必不够
张量并行每层传递部分结果并做集合通信通信频繁,优先选高速 P2P 或 NVLink 域
流水线并行主要在阶段边界传激活通信相对少,但要评估流水线空泡
ZeRO 参数分片按阶段传参数、梯度或优化器状态显存省得越多,通信与实现复杂度通常越高

实际比较时固定模型、micro-batch、序列长度和 GPU 数,记录每 step 的计算与通信耗时;跨机训练还要单独算网络带宽。只知道 PCIe 的标称 GB/s,推不出最终训练速度。

生产部署#

吞吐与延迟#

生产推理至少同时看首字延迟、逐 token 延迟和单位时间完成的请求数。单请求的 decode 常受带宽限制;连续批处理让多个请求共用一次权重读取,batch 增大后算力、KV cache 容量和调度开销也会限制吞吐。比较卡型时固定模型、量化格式、输入与输出长度、并发量,分别记录延迟分位数和 tokens/s;不同条件下的标称 TPS 不能直接比。

如果 prefill 与 decode 的占比不同,可以测分离部署:算力较强的设备处理 prefill,带宽和容量适合的设备处理 decode。不过还要传 KV cache,只有节省的计算时间超过传输和额外调度开销才值得拆开。

机房的账#

数据中心部署不能只比较卡价。GeForce 驱动许可对数据中心使用有限制;ECC、服务器质保和故障更换关系到长时间运行的风险;开放式风扇需要逐台确认机箱间距、风道和供电。更换涡轮散热只能解决部分散热问题,不能补回 ECC、许可和官方支持。若有采购或审计要求,先把这些条件列为硬约束,再在满足条件的卡里比较吞吐和总成本。

非常规方案#

以下方案会改变显存容量或多卡通信路径,但都需要把驱动维护、稳定性和售后算进成本;云租赁则是不购卡的基准方案。

PCIe P2P 直连#

40、50 系 GeForce 没有 NVLink,官方驱动也不提供常规的卡间 P2P。社区的 open-gpu-kernel-modules 补丁尝试通过 BAR1 让 GPU 直接访问另一张卡的显存,减少主存中转;它不等于获得 NVLink 带宽,还取决于 PCIe 拓扑、驱动版本和软件栈是否支持这条路径。

三种通信路径的区别如下:

GPU 间通信的三种通路:NVLink、BAR1 P2P 与主存中转

买多张消费卡之前,应在目标主板和驱动版本上验证 P2P 是否真的启用,再跑目标模型比较延迟与吞吐。无法接受自维护驱动、升级后重新验证和缺少官方支持,就不要把补丁带来的收益计入采购预算。

魔改显存#

4090 48G 是把原版 24G 的显存容量翻倍的第三方改装卡。它的主要价值是让约 42 GB 的 70B Q4 权重有机会在单卡常驻,省去双卡分片和同步;带宽仍按原卡量级计算,显存翻倍不意味着 decode 提速。已有评测报告约 5% 的核心性能损失,具体改装方案还可能限制功耗。

报价在两三万元区间时,至少要和官方 48G 工作站卡、双 24G 方案分别比总价、上下文余量、稳定性与保修。没有原厂售后和可重复验证的长期稳定性,就不能只凭显存容量替代生产环境的卡。

云租赁#

以下时租只作估算输入,不是固定报价;机型、地区、供需和是否有服务保障都会改变价格。

卡参考时租
RTX 3090约 0.25 美元/小时
RTX 4090约 0.35 美元/小时
H100约 2.2 美元/小时
B200约 6 美元/小时

国内平台的 4090 也可见约 2–3 元/小时的报价。比较时先统一币种和配置,再核对实例是否独占 GPU、是否按关机时间收费以及数据存储和出口费用。

以自购 4090 为 1.5 万元、租赁 2 元/小时为例,忽略电费、主机、折旧和残值时,租赁累计约 7500 小时等于购卡价:每天 24 小时约 10 个月,每天 8 小时约 31 个月,每天 2 小时约 10 年。实际自购回本点还要加电费和维护,减去转卖残值;云实例若会被回收,训练还要计入 checkpoint、重启和数据搬运成本。

自购与云租赁的累计成本对比

结语#

选卡时先给出模型与精度、最长上下文、并发量、单流延迟或训练 step 时间的目标,再计算显存占用和吞吐。单卡放不下时,分别测卸载、多卡分片和更大显存卡;必须多卡时,先确认并行方式与实际拓扑。最后用同一工作负载比较购买、改装与租赁的总成本。

GPU 选型决策流程

本文限定 NVIDIA。国产算力的硬件与软件生态留到下一篇单独讨论。

参考资料#

博客桌宠