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
相关推荐
九章云极AladdinEdu2 天前
华为昇腾NPU与NVIDIA CUDA生态兼容层开发实录:手写算子自动转换工具链(AST级代码迁移方案)
人工智能·深度学习·opencv·机器学习·华为·数据挖掘·gpu算力
科智咨询3 天前
双轮驱动:政策激励与外部制约下的国产服务器市场演进
运维·服务器·gpu算力
九章云极AladdinEdu3 天前
冷冻电镜重构的GPU加速破局:从Relion到CryoSPARC的并行重构算法
人工智能·pytorch·深度学习·机器学习·自然语言处理·架构·gpu算力
成都极云科技4 天前
成都算力租赁新趋势:H20 八卡服务器如何重塑 AI 产业格局?
大数据·服务器·人工智能·云计算·gpu算力
刘阿宾4 天前
【华为昇腾|CUDA】服务器A6000显卡部署LLM实战记录
服务器·华为·语言模型·gpu算力·kylin
笑稀了的野生俊7 天前
在服务器中下载 HuggingFace 模型:终极指南
linux·服务器·python·bash·gpu算力
小眼睛FPGA7 天前
【RK3568+PG2L50H开发板实验例程】FPGA部分/紫光同创 IP core 的使用及添加
科技·嵌入式硬件·ai·fpga开发·gpu算力
指月小筑7 天前
开源 vGPU 方案 HAMi: core&memory 隔离测试
人工智能·云原生·容器·kubernetes·开源·gpu算力
小眼睛FPGA8 天前
【RK3568+PG2L50H开发板实验例程】Linux部分/FPGA dma_memcpy_demo 读写案例
linux·运维·科技·ai·fpga开发·gpu算力
成都极云科技19 天前
如何选择适合的服务器托管方案以优化网站性能:提升速度与稳定性的关键决策
运维·服务器·人工智能·云计算·gpu算力