本文详细介绍了大模型 GPU 显存计算方法,以 Llama 70B 为例,分析模型权重显存(140GB)、KV Cache 显存(800GB)和其他开销(94GB),总计约 1TB 支持 10 并发用户。文章提供优化建议,如减少并发数或上下文长度可降低显存需求,并指出显存计算是部署大模型的关键门槛。
引言:部署大模型的第一道门槛
当我们准备部署一个大语言模型并提供服务时,最先遇到的问题往往是:我到底需要准备多少 GPU 显存?
这不仅关系到硬件成本,更直接影响服务的并发能力和响应速度。今天,我们就以Llama 70B 模型为例,手把手教你计算推理所需的 GPU 显存。
📋 案例参数设定
让我们先明确计算的基础参数:
- 模型规模: Llama 70B(700 亿参数)
- 模型层数: 80 层
- 上下文长度: 最大支持 32K tokens
- Hidden Dimension: 8196
- 参数精度: 每个参数 2 个 bytes(FP16)
- 并发用户数: 10 个同时请求
基于这些参数,我们开始逐步计算所需的 GPU 显存。
💾 第一部分:模型权重显存
首先要计算的是模型本身占据的显存,因为我们需要把整个模型加载到 GPU 中。
计算公式:
模型显存 = 参数量 × 每参数字节数 = 70B × 2 bytes = 70 × 10^9 × 2 bytes = 140 GB
这个 140GB 是模型权重的基础占用,无论有多少用户请求,这部分都是固定的。
🚀 第二部分:KV Cache 显存 (重点!)
这是显存占用的大头,也是最容易被忽视的部分。
什么是 KV Cache?
在大模型推理时,文本是逐个 token 生成的。为了加速这个过程,我们使用 KV Cache 机制来缓存中间计算结果。
如果没有 KV Cache,每生成一个新 token,都需要重新计算之前所有 token 的注意力权重,这会导致大量重复计算,严重影响推理效率。
KV Cache 显存计算
KV Cache 的计算分为两步:
步骤 1:计算单个 token 的 KV Cache 大小
单 token 显存 = 层数 × Hidden Dimension × 字节数 × 2(Key + Value) = 80 × 8196 × 2 bytes × 2 = 2.5 MB
步骤 2:计算总 KV Cache
总 KV Cache = 单 token 显存 × 上下文长度 × 并发用户数 = 2.5 MB × 32K × 10 = 2.5 MB × 32, × = GB


