大模型并发场景GPU显存资源计算
💡
原文中文,约4400字,阅读约需11分钟。
📝
内容提要
本文介绍了大模型并发推理的显存计算方法,指出KV Cache是显存增长的主要因素。通过7B、32B和70B模型的示例,分析了不同并发数下的显存需求及推荐的GPU配置。建议采用张量并行和专家并行来优化显存使用,以满足系统内存和CPU核心数的需求。
🎯
关键要点
-
KV Cache是显存增长的主要因素,显存需求随着并发数的增加而显著增长。
-
并发推理显存计算的核心公式为:总显存 = 模型参数 + KV Cache + 中间激活值 + 系统开销。
-
KV Cache显存计算公式为:KV Cache显存(GB) = 2 × 最大并发请求数 × 序列长度 × 层数 × 隐层维度 × 精度字节数 ÷ (1024³)。
-
建议采用张量并行和专家并行来优化显存使用,以满足系统内存和CPU核心数的需求。
-
对于不同规模的模型(如7B、32B、70B),显存需求和推荐的GPU配置有所不同,具体取决于并发数和使用场景。
❓
延伸问答
KV Cache对显存需求的影响是什么?
KV Cache是显存增长的主要因素,显存需求随着并发数的增加而显著增长。
如何计算并发推理的总显存需求?
总显存 = 模型参数 + KV Cache + 中间激活值 + 系统开销。
在高并发场景下,推荐的GPU配置是什么?
对于高并发场景,建议使用2×A100 80GB或4×A100 40GB的配置。
如何优化显存使用以满足系统需求?
建议采用张量并行和专家并行来优化显存使用,以满足系统内存和CPU核心数的需求。
不同规模模型的显存需求有什么区别?
不同规模的模型(如7B、32B、70B)在显存需求和推荐的GPU配置上有所不同,具体取决于并发数和使用场景。
vLLM如何控制显存分配?
vLLM通过gpu_memory_utilization参数控制显存分配,通常设置为0.8-0.9以预留部分显存用于系统开销。
➡️