章节 01
导读 / 主楼:LLM GPU VRAM 计算器:部署大模型前的硬件规划利器
一个交互式 Web 工具,帮助开发者在本地部署大语言模型前精确估算 VRAM 需求、KV 缓存压力及推理吞吐量,支持多种模型家族和 GPU 配置。
正文
一个交互式 Web 工具,帮助开发者在本地部署大语言模型前精确估算 VRAM 需求、KV 缓存压力及推理吞吐量,支持多种模型家族和 GPU 配置。
章节 01
一个交互式 Web 工具,帮助开发者在本地部署大语言模型前精确估算 VRAM 需求、KV 缓存压力及推理吞吐量,支持多种模型家族和 GPU 配置。
章节 02
章节 03
原作者与来源
\nweight_vram_gb = total_params_b * (bytes_per_param + quant_overhead)\n\n\n其中 total_params_b 是以十亿为单位的总参数量。对于 MoE 模型,虽然每个 token 只激活部分参数,但加载到显存时仍需容纳全部专家参数。\n\nKV 缓存显存\n\n\nkv_cache_gb = layers * kv_heads * head_dim * 2 * context_tokens * kv_bytes / 2^30\n\n\n这里的系数 2 代表 Key 和 Value 两组张量。KV 缓存是长上下文服务显存消耗的主要原因——它与上下文长度和并发请求数都呈线性关系。\n\n对于 DeepSeek V3/R1 等采用 MLA(Multi-head Latent Attention)架构的模型,工具使用基于潜在 KV 维度的近似计算,而非传统的 GQA 头几何结构。\n\n可用显存预算\n\n\nusable_vram_gb = gpu_vram_gb * gpu_count - max(total_vram_gb * (1 - utilization), reserve_gb)\n\n\n预留项用于防止内存分配器碎片和 CUDA 上下文开销,多 GPU 配置还考虑了通信效率的折损。\n\n---\n\n吞吐量估算:屋顶线分析\n\n工具将推理过程分为两个阶段分别建模:\n\n1. Prompt Prefill(预填充): 计算密集型阶段,受限于 GPU 算力峰值\n2. Token Generation(生成): 内存带宽密集型阶段,受限于显存读取速度\n\n这种"屋顶线"(Roofline)分析方法的直觉是:工作负载的性能受限于两个天花板中更紧的那个——要么是计算吞吐量,要么是内存带宽。\n\n用户可以根据自己的使用场景(是更看重首次响应速度还是整体吞吐量)来调整参数,找到最适合的部署配置。\n\n---\n\n实用功能:数据导出与国际化\n\nCSV 导出\n\n工具支持导出三类 CSV 文件:\n\n- 模型目录: 包含元数据、发布日期、来源 URL 和备注\n- GPU 硬件目录: 包含硬件规格、带宽、算力等指标\n- 当前估算配置: 包含用户选择的配置和计算出的内存/吞吐量指标\n\n导出通过浏览器 Blob 直接生成,无需服务器参与。\n\n国际化支持\n\n应用默认使用英文(en_US),同时提供简体中文(zh_CN)界面。首版已覆盖全局导航、摘要标签、导出控件和主要结果展示区域。\n\n---\n\n本地运行与二次开发\n\n项目采用标准前端技术栈,本地启动非常简单:\n\nbash\nnpm install\nnpm run dev\n\n\n生产构建:\n\nbash\nnpm run build\n\n\n代码结构清晰:\n\n- src/data/modelDefs.ts: 模型参数、上下文、发布日期和来源链接\n- src/data/gpuCards.ts: GPU 显存、带宽、算力和来源链接\n- src/utils/formulas.ts: 共享的计算公式辅助函数\n\n---\n\n在线体验\n\n项目已部署到 GitHub Pages,可直接访问体验:\n\nhttps://jryaonj.github.io/llm-gpu-vram-calculator\n\n---\n\n总结与建议\n\nLLM GPU VRAM Calculator 填补了 LLM 部署流程中的一个重要空白——在"想部署"和"能部署"之间提供数据支撑。对于以下场景特别有价值:\n\n- 硬件选型: 在购买新显卡前评估是否能满足目标模型需求\n- 模型选型: 在现有硬件约束下选择最合适的模型和量化方案\n- 容量规划: 评估多用户并发场景下的显存瓶颈\n- 成本估算: 云 GPU 租赁前的资源配置参考\n\n工具采用 MIT 许可证开源,欢迎社区贡献更多模型和 GPU 数据。