模型显存估算 使用指南
按参数量、精度字节数与激活占用估算模型权重与推理显存,适用于部署硬件选型、批量大小设定与显存溢出预警。
计算公式与原理
权重显存 ≈ 参数量 × 每参数字节数;总显存 ≈ 权重 + 激活/1000
推理显存主要由权重决定:FP16 为 2 字节、INT8 为 1 字节、FP32 为 4 字节。训练还要加梯度与 Adam 状态(各再占 1 份与 2 份权重),加上随批量与序列长度增长的激活值,常是权重本身的数倍。
使用步骤
- 填写「参数量(十亿)」。
- 填写「每参数字节」。
- 填写「激活 MB」。
- 结果区会即时更新;可一键复制结果用于记录或汇报。
典型使用场景
- 权重显存≈参数量×每参数字节数(FP16=2, INT8=1, FP32=4)。
- 推理显存还需加激活/KV 缓存,训练另需梯度与优化器状态(常数倍于权重)。
- 估算用于硬件选型、batch 设定与显存溢出预警。
算例参考
- 7B 模型显存:7B 参数 FP16:权重≈7e9×2=14GB;加 KV 缓存与激活后推理约 16~18GB,可在 24GB 显卡跑;若训则需额外梯度+优化器(约 3~4 倍权重)。
注意事项
结果为按上述公式得到的理论估算值,实际表现受数据分布、实现细节与运行环境影响,落地决策请以实测为准;本工具纯前端运行,输入不上传服务器。
- 为什么训练显存远大于推理?
- 训练需保留前向激活供反向、存梯度(同尺寸)与优化器状态(Adam 约 2 倍权重),常使总显存达权重 3~4 倍;推理只需权重+少量激活。
- 显存不够怎么办?
- 量化降权重字节数、用梯度检查点换计算省激活、降 batch、或模型并行/张量并行分片;必要时上更大显存或分布式。