推理:显存计算
- 推理的显存大头就是:参数量,参数类型版本一般有以下四种:
float 32位 浮点数 4 字节
half / BF16 16位 浮点数 2 字节
int8 8位 整数 1 字节
int4 4位 整数 0.5 字节
以 7B-BF16 版本为例,需要显存 = 数量 * 类型大小 = 70亿 * 2字节 = 140亿字节
- 所以,7B-BF 就是 7 * 2 = 14 GB 的显存,因为除了参数,推理还需要另外的显存,溢出一点没坏处。
- 因此,只对模型进行推理,所需要的显存具体如下:
7B参数的4种常见类型所需推理显存计算如下:
float 7 * 4 = 28 GB
half / BF16 7 * 2 = 14 GB
int8 7 * 1 = 7 GB
int4 7 * 0.5 = 3.5 GB
13B参数的4种常见类型所需推理显存计算如下:
float 13 * 4 = 52 GB
half / BF16 13 * 2 = 26 GB
int8 13 * 1 = 13 GB
int4 13 * 0.5 = 6.5 GB
训练:显存计算
- 为了让模型收敛,训练的参数类型不能是 int8 / int4;一般是 float,效果差点的 就用 BF16;
- 训练主要的参数包括,反向传播 / Adam-优化 / Transformer架构 等因素,一般来说,训练需要的显存,是同样规模 LLM 推理 的 3-4倍;
- 具体的计算如下所示:
保守估计,按 4倍 计算。
7B 训练需要的显存,估算结果:
参数类型 所需显存
float 7 *

4万+

被折叠的 条评论
为什么被折叠?



