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
相关推荐
ai小陈10 小时前
FramePack图生视频云端部署实战:从单图输入到视频输出的完整流程
服务器·人工智能·安全·ai·音视频·gpu算力
ai小陈12 小时前
Hunyuan3D-2云端部署实战:图生3D、文生3D怎么跑更稳
人工智能·科技·3d·ai·音视频·gpu算力
ai小陈4 天前
大模型推理显存不够怎么办?量化、KV Cache与CPU Offload优化实战
大数据·人工智能·ai·云计算·gpu算力
Lifangyun_WD4 天前
第一次租 GPU 服务器怎么开始?镜像、SSH、数据存储和停机前要做什么
服务器·云计算·gpu算力·gpu算力租赁
算力百科小智8 天前
哪些算力租用平台比较好?通过三轮试租,比查看推荐榜单更准确
gpu算力·gpu租用
ai小陈8 天前
PyTorch多GPU分布式训练实战:从单卡脚本迁移到DDP
服务器·人工智能·pytorch·分布式·深度学习·ai·gpu算力
云上工程笔记8 天前
RDMA 高速互联 GPU 云怎么选:多卡训练、分布式训练与 RoCE/InfiniBand 架构对比
架构·云计算·gpu算力
算力百科小智12 天前
H100租用平台如何选?真正拉开差距的是整机拓扑和集群网络
gpu算力·gpu租用
简单同学20 天前
【深入 NVIDIA GPU 架构 01】GPU 是如何诞生的?
架构·系统架构·gpu算力
fivebliss24 天前
取算存——模型容量、能耗指标和架构梳理
人工智能·性能优化·gpu算力