-
权重显存(GiB)
-
KV Cache(GiB)
-
合计(GiB)
-
建议显存(GiB)
-
| 参数量 | FP16 权重 | INT8 权重 | INT4 权重 |
|---|
计算式
权重显存 = 参数量 × 10⁹ × 每参数字节 ÷ 1024³(GiB)
KV Cache = 2 × 层数 × 隐藏维度 × 上下文长度 × 并行数 × KV 字节数
2 来自 Key 与 Value 两份缓存
建议显存 = 合计 × 1.2(预留 20% 给激活值与碎片)
权重显存 = 参数量 × 10⁹ × 每参数字节 ÷ 1024³(GiB)
KV Cache = 2 × 层数 × 隐藏维度 × 上下文长度 × 并行数 × KV 字节数
2 来自 Key 与 Value 两份缓存
建议显存 = 合计 × 1.2(预留 20% 给激活值与碎片)
部署时显存需求 = 权重 + KV Cache + 激活值。7B 模型 FP16 权重约 13 GiB,单张 16 GB 卡可跑短上下文;但若把上下文拉到 32K,KV Cache 会迅速膨胀到十几 GiB,这才是长上下文真正的显存杀手。
关于本工具
想在本地或单卡上跑大模型,先要算清楚显存够不够。显存主要被三部分占用:模型权重、KV Cache(存放注意力缓存的键值对)与激活值。其中权重随参数量固定,KV Cache 随上下文长度与并发数线性增长。
如何使用
填写模型参数量(如 7、13、70)与权重精度,再从模型的 config.json 里查出层数、隐藏维度,并设定你要使用的上下文长度与并发数。结果会分别给出权重与 KV Cache 的占用,以及建议的显卡显存。
常见问题
INT4 量化会影响效果吗?会有一定损失,但对 7B 以上的模型,INT4 的困惑度上升通常可接受,且显存直接减半到四分之一,是消费级显卡的常见选择。
为什么实际占用比算出来的高?本工具只算了权重与 KV Cache。推理框架还会占用激活值、CUDA 上下文与显存碎片,所以给出了 ×1.2 的余量系数。实际排查请以 nvidia-smi 的实测值为准。
长上下文为什么这么吃显存?因为 KV Cache 与上下文长度成正比,而且随着层数一起放大。把上下文从 4K 提到 32K,KV Cache 也涨 8 倍——这就是长上下文推理需要更大显存的根本原因。
你可能还想问
显存需求主要由什么决定?
三部分:模型权重(参数量 × 每参数字节数)、KV 缓存(随上下文长度与批大小线性增长)、中间激活与框架开销;推理长文本时 KV 缓存往往反超权重成为瓶颈。
量化到 4bit 能省多少显存?
权重约降到 FP16 的四分之一(7B 模型从约 14GB 降到 3.5-4GB),但 KV 缓存与激活仍按较高精度计算;量化省的是权重,长上下文场景提升有限。
显存差一点跑不起来怎么办?
按优先级:降低上下文长度与批大小、用更小量化(8bit/4bit)、开启 FlashAttention 等省显存注意力、权重分片多卡;最后才考虑换更小的模型。
速查在线工具箱