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
相关推荐
小眼睛FPGA4 小时前
【RK3568+PG2L50H开发板实验例程】FPGA部分/紫光同创 IP core 的使用及添加
科技·嵌入式硬件·ai·fpga开发·gpu算力
小眼睛FPGA1 天前
【RK3568+PG2L50H开发板实验例程】Linux部分/FPGA dma_memcpy_demo 读写案例
linux·运维·科技·ai·fpga开发·gpu算力
成都极云科技12 天前
如何选择适合的服务器托管方案以优化网站性能:提升速度与稳定性的关键决策
运维·服务器·人工智能·云计算·gpu算力
1213412 天前
LLM:重构数字世界的“智能操作系统”
gpt·aigc·ai编程·llama·gpu算力
小猴崽14 天前
基于腾讯云GPU服务器的深度学习训练技术指南
深度学习·gpu算力·解决方案
NEKGod17 天前
centos9安装显卡驱动
centos·gpu算力
Prokint.23 天前
GPU算力租用平台推荐(AI/游戏串流/渲染/办公)
人工智能·游戏·云计算·gpu算力
舰长1151 个月前
GPU显存的作用和如何选择
gpu算力
霖001 个月前
详解GPU
人工智能·vscode·python·fpga开发·mvc·gpu算力
摩尔线程1 个月前
推测解码算法在 MTT GPU 的应用实践
算法·语言模型·大模型·gpu算力·gpu·摩尔线程