✨ Tips:文中“显存”指GPU可使用的内存空间,如有SoC使用
Unified Memory
(如Apple M1~M3系列、Nvidia AGX Orin等)则可简单理解为系统内存。
推理显存
对于一个70亿参数(7B)的模型,以 qwen2-7B 为例,预计需要的显存需求如下:
- FP32浮点精度:28GB
- BF16精度:14GB
- int8精度:7GB
虽然其他因素也在占用显存,但推理期间使用显存的主要是参数量。
比如,qwen2-7B-BF16 模型需要的显存等于参数数量乘以类型大小:70亿参数 x 2字节 = 140亿字节。因此,140亿字节 = 14 x 1,000 x 1,000 x 1,000 / 1024 / 1024 / 1024 ≈ 13 GB(考虑1000/1024)³ ≈ 0.93。
注1:(1000/1024)³ ≈ 0.93,为了估算目的,简单地将此比率视为1。
注2:对于7B-BF16模型,显存需求大约是7 x 2 = 14 GB。上述估算略高于精确计算,但更实用,因为推理需要超出参数之外的额外内存。
假设要估算
llama2-13B
模型的显存需求,对应各种类型的分别是:float:13 x 4 = 52 GB,half/BF16:13 x 2 = 26 GB,int8:13 GB,int4:13 x 0.5 = 6.5 GB