15 大模型训练 内存优化

先看GPU结构,我们常说显存的时候,说的一般就是Global memory

训练的过程中,我们为了反向传播过程,必须将中间的结果(激活值)存储下来。

在训练的过程中,那些会消耗内存呢?

  • model weights
  • optimizer sates
  • intermediate activation values

对于有N层的神经网络来说,内存的消耗是O(N)的。

检查点技术

在前向传播的时候,只选择保留部分数值,当进行反向传播时,所需要的中间值会进行重计算。

这样虽然会增减计算成本,但是也大大减少了内存占用。

模型并行

将模型进行拆分

数据并行

将minibatch 划分成更小的micobatch,训练每个batch的时候,每个工作节点获得一个microbatch,

梯度更新

各个节点之间计算出来的梯度要统一,可以使用 all-reduce或者 使用一个参数服务器用来统一更新各个节点之间的梯度。

为了加快训练,可以使得参数传递和计算过程互相掩盖

READING LIST:

  • ZeRO
  • Beyond Data and Model Parallelism for Deep Neural Networks
  • GSPMD: General and Scalable Parallelization for ML Computation Graphs
相关推荐
有来有去95277 小时前
[模型量化]-大模型量化效果评价-Qwen2.5-72B
人工智能·语言模型·gpu算力
大大da怪i1 天前
GPU编程之warp级编程
c++·gpu算力
神算大模型APi--天枢6462 天前
智能协同与垂直深耕:聚合模型API算力平台重构软件开发生态
大数据·人工智能·科技·重构·架构·gpu算力
神算大模型APi--天枢6463 天前
聚合模型 API 算力平台:前端开发的强劲助力
大数据·人工智能·科技·架构·gpu算力
leafff1234 天前
大厂算力调研:CPU/GPU算力使用及迁移情况
gpu算力
蓝耘智算4 天前
GPU算力租赁与算力云平台选型指南:从需求匹配到成本优化的实战思路
大数据·人工智能·ai·gpu算力·蓝耘
Wild_Pointer.4 天前
项目实战:使用QCustomPlot实现多窗口绘制数据(支持GPU加速)
c++·qt·gpu算力
音视频牛哥5 天前
AI时代底层技术链:GPU、云原生与大模型的协同进化全解析
大数据·云原生·kubernetes·音视频·transformer·gpu算力·云原生cloud native
企鹅侠客5 天前
GPU卡在空闲时使用率异常的处理
ai·gpu算力
蓝耘智算6 天前
如何选择合适的GPU算力服务商?企业AI算力采购指南
ai·gpu算力·蓝耘