大模型原理--训练显存消耗的构成

举报
剑指南天 发表于 2026/05/06 12:56:52 2026/05/06
【摘要】 显存的消耗主要由以下五部分组成:模型参数(Model Weights)、梯度(Gradients)、优化器状态(Optimizer States)、激活值(Activations) 以及 其他运行时开销(Runtime Overhead)。

1.概述

在对大语言模型进行训练或微调时,显存(VRAM)的消耗主要由以下五部分组成:模型参数(Model Weights)、梯度(Gradients)、优化器状态(Optimizer States)、激活值(Activations) 以及 其他运行时开销(Runtime Overhead)。

2. 模型参数

模型参数指网络中所有可训练权重(如注意力投影矩阵、前馈网络权重等)。在训练过程中,这些参数需常驻显存,用于前向传播、反向传播计算和参数更新。参数所占显存与模型总参数量和存储精度直接相关。

3. 梯度

在反向传播过程中,每个可训练参数都会计算对应的梯度。梯度张量的形状与参数一致,通常以与参数相同的精度存储,因此其显存占用通常与模型参数相当。所以同上。

4. 优化器状态

现代优化器(如 Adam/AdamW)为每个可训练参数维护额外的状态变量(例如一阶矩和二阶矩)。这些状态通常以较高精度(如 FP32)存储,显存占用往往是模型参数的数倍,是微调中显存消耗的主要来源之一。

5. 激活值

激活值是前向传播中各层输出的中间结果,需在反向传播时用于梯度计算。其显存占用与模型深度、隐藏层维度、输入序列长度、批次大小呈正相关。

6. 其他运行时开销

包括CUDA 内核临时内存、分布式训练中的通信缓冲区等。

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。