CNCNC 信息港 · 郑州中科信息技术有限公司|成立 2004 年 4 月,22 年 IDC 行业经验
容量测算

多大显存,能跑多大模型

「70B 要几张卡」这个问题,答案不在参数表里,在一条公式里:权重 + KV Cache + 激活值 + 框架开销。多数人只算了第一项,所以在长上下文和高并发时炸显存。

4 项显存占用构成
2 字节FP16 每参数量
313MB70B 每千 token KV
16 字节全参微调每参数量

跑一个 70B 模型,到底需要多少显存、几张卡?

FP16 推理:70B 权重约 140GB,单张 80GB 卡放不下,至少 2 张。但真正的变量是 KV Cache——70B 采用 GQA 后约 313MB/千 token,8K 上下文、batch 16 时再占约 40GB,实际配置通常是 4 张起。如果用 INT4 量化,权重降到 35GB,单卡可跑但并发受限。全参微调则要按每参数 16 字节算,70B 需要 1TB 以上显存,即 16 张 80GB 卡起步。

  • 推理权重:FP16 每参数 2 字节,INT8 是 1,INT4 是 0.5
  • KV Cache 常被漏算,长上下文时可能超过权重本身
  • 全参微调每参数约 16 字节(含优化器状态)
  • 70B FP16 推理:2 卡起步,实用配置 4 卡
  • 留 20% 余量,别按理论值卡满
公式

一条公式,四项构成

显存占用不是玄学,四项加起来就是答案:

总显存 = 权重 + KV Cache + 激活值 + 框架开销
权重 ≈ 参数量 × 每参数字节(FP16=2,INT8=1,INT4=0.5)
KV Cache ≈ 2 × 层数 × KV头数 × head维度 × 序列长度 × batch × 每元素字节
激活值:推理时很小,训练时随 batch 与序列长度增长
框架开销:CUDA 上下文与显存碎片,通常预留 1~2GB,工程上按 20% 余量更稳

四项里,权重是固定的,其余三项都随你的使用方式变化。所以「这个模型要几张卡」这个问题,必须带上「多长上下文、多少并发、推理还是训练」三个前提才有答案。

权重

权重:最容易算的一项,也是唯一固定的

按每参数字节数直接乘。数值为理论值,实际加载会有少量额外开销。
模型规模FP16 / BF16(2 字节)INT8(1 字节)INT4(0.5 字节)
7B约 14GB约 7GB约 3.5GB
13B约 26GB约 13GB约 6.5GB
32B约 64GB约 32GB约 16GB
70B约 140GB约 70GB约 35GB
110B约 220GB约 110GB约 55GB
180B约 360GB约 180GB约 90GB
405B约 810GB约 405GB约 202GB

看这张表能得出两个直接结论:32B 是单张 80GB 卡在 FP16 下的上限(64GB 权重 + 余量,勉强放得下);70B 在 INT4 下可以塞进一张卡,但并发一上来就会被 KV Cache 顶爆。

量化不是免费的。INT4 通常伴随精度下降,对话类任务可能感知不明显,但代码生成、数学推理、结构化抽取这类任务容易出现质量滑坡。上线前必须用自己的评测集对比。
缓存

KV Cache:最常被漏算的一项

大模型生成每个 token 时,都要缓存前面所有 token 的 Key 和 Value,避免重复计算。这部分显存随上下文长度与并发数线性增长,且不随量化权重一起缩小(除非单独量化 KV)。

每 1,000 token 的 KV Cache 占用(FP16)。实际占用 = 表中数值 × 序列长度(千) × 并发数。
模型结构每 1K token8K 上下文 × 并发 16
7B32 层 / 32 头(MHA)约 500MB约 64GB
13B40 层 / 40 头(MHA)约 800MB约 102GB
32B64 层 / 8 组 KV(GQA)约 250MB约 32GB
70B80 层 / 8 组 KV(GQA)约 313MB约 40GB

这张表解释了一件反直觉的事:13B 的 KV Cache 比 70B 还大。因为 13B 用的是标准多头注意力(MHA),每个头都有独立的 KV;70B 用了分组查询注意力(GQA),多个查询头共享一组 KV,缓存量降到 1/8 左右。

工程结论:选模型时不要只看参数量,要看注意力结构。同样是 70B,GQA 版本在长上下文下的显存效率可能比 MHA 版本好数倍。长上下文业务(文档问答、代码仓库理解)尤其要关注这一项。
训练

训练与推理,差 8 倍以上

推理只需要权重和缓存;训练还要存梯度、优化器状态和中间激活。以 AdamW 混合精度为例:

全参微调每参数约 16 字节:权重 2 + 梯度 2 + FP32 主权重 4 + 一阶动量 4 + 二阶动量 4。
方式每参数字节7B 需要70B 需要
FP16 推理约 214GB140GB
INT8 推理约 17GB70GB
LoRA 微调(基座冻结)约 2 + 少量适配器16~20GB150~170GB
全参微调(AdamW 混合精度)约 16112GB1,120GB

所以:7B 全参微调至少 2 张 80GB 卡(配合 ZeRO 分片),70B 全参微调需要 16 张卡起步。而 LoRA 因为冻结基座,7B 单卡就能跑,70B 用 2~4 卡可以完成——这是 LoRA 成为主流的真实原因,不只是省显存,更是省卡。

激活值这一项在长序列训练时会显著增长,实践中常配合梯度检查点(gradient checkpointing)用时间换显存,能把激活占用压到 1/3 左右。

速查

卡数速查表(80GB 单卡,留 20% 余量)

按「权重 + 8K 上下文 + 中等并发」的典型配置估算,实际以压测为准。
模型FP16 推理INT8 推理INT4 推理LoRA 微调全参微调
7B1 张1 张1 张1 张2 张
13B1 张1 张1 张1 张2~4 张
32B1~2 张1 张1 张2 张8 张
70B2~4 张2 张1~2 张2~4 张16 张
110B4 张2~3 张2 张8 张24 张
180B8 张4 张2~3 张8~16 张32 张+
405B12~16 张6~8 张4 张16 张+64 张+

读表时注意三点:第一,推理的卡数主要由权重决定下限、由 KV Cache 决定实际配置;第二,微调的卡数还要乘上你想要的并行度(数据并行会按倍数增加卡数);第三,跨机之后通信开销会吃掉一部分效率,8 卡以上的扩展不是线性的。

误判

三个常见误判

误判一:按权重算卡数。70B FP16 权重 140GB,看起来 2 张卡就够。但加上 8K 上下文、16 并发的 KV Cache(约 40GB)和框架开销,2 张卡只剩不到 5GB 余量,稍有波动就 OOM。实用配置是 4 张。

误判二:忽略量化对 KV Cache 的影响。权重量化到 INT4,KV Cache 并不会自动变小,它仍按 FP16 存。有些框架支持 KV Cache 量化,但需要单独开启且可能影响精度。

误判三:以为多卡就是线性加速。张量并行每层都要通信,卡越多通信占比越高。8 卡跑 70B 的实际吞吐通常只有单卡理论值的 5~6 倍,而不是 8 倍。

本文所有数值为按公开架构参数推算的理论参考值,不含具体框架的显存管理优化。上生产前请用真实模型与真实流量做压测,压测结果才是配置依据。
FAQ

显存测算的八个实际问题

70B 模型需要几张 80GB 卡?

FP16 推理 2 张是理论下限,实用配置 4 张;INT8 推理 2 张;INT4 推理 1~2 张(并发受限);LoRA 微调 2~4 张;全参微调 16 张起。具体取决于上下文长度与并发数。

为什么 13B 的 KV Cache 比 70B 还大?

因为注意力结构不同。13B 常用标准多头注意力(MHA),每个头独立缓存 KV;70B 用分组查询注意力(GQA),8 个查询头共享一组 KV,缓存量降到约 1/8。选模型时要看结构,不只看参数量。

INT4 量化后显存能省多少?

权重部分能省到 FP16 的 1/4(每参数 0.5 字节对 2 字节)。但 KV Cache 通常不随之缩小,所以总显存节省比例低于 75%。长上下文场景下,节省效果会明显打折。

LoRA 微调比全参省多少显存?

全参微调每参数约 16 字节(含梯度与优化器状态),LoRA 只需约 2 字节(基座冻结)+ 少量适配器参数,相差 8 倍左右。这是 7B 能在单卡微调、70B 只需 2~4 卡的直接原因。

上下文从 8K 加到 128K,显存会涨多少?

KV Cache 与序列长度线性相关。8K 到 128K 是 16 倍,KV Cache 也涨 16 倍。70B 在 8K × 并发 16 时约 40GB,到 128K 同等并发就是 640GB,必须靠减少并发或分页注意力等技术手段。

显存够但速度慢,是什么原因?

多数是显存带宽瓶颈,不是容量瓶颈。单卡解码速度取决于带宽(H100 3.35TB/s、A100 2.04TB/s),而不是算力。所以「显存够用」和「速度够快」是两个独立问题。

多卡跑一个模型,8 卡是 8 倍速度吗?

不是。张量并行每层都要跨卡通信,卡越多通信开销占比越高。8 卡跑 70B 的实际吞吐通常是单卡的 5~6 倍。通信带宽(NVLink 400 vs 900 GB/s)会直接影响这个倍数。

怎么快速估算我的场景要几张卡?

三步:先算权重(参数量 × 精度字节),再算 KV Cache(每千 token 数值 × 上下文千数 × 并发),两项相加后除以单卡可用显存(80GB 按 64GB 可用估),向上取整。留 20% 余量。

把你的模型、上下文长度和并发量发我,我算准确卡数

给出「几张卡、什么型号、月租多少」的具体配置,不用你自己套公式。

在线询价

告诉我们你的需求,工程师直接对接

提交后由对应产品线的工程师联系,提供资源清单与报价区间。电话与信息仅用于本次咨询对接,不做他用。

  • 2 小时内响应(工作日)
  • 提供多方对比的选型建议
  • 可开具资质文件与正规发票
热线 0371-65111123

提交即表示同意我们通过电话、邮件或企业微信与您联系;点击提交将为你打开企业微信顾问,便于直接发送需求与截图。

企业微信
咨询
在线
询价
电话
咨询