motivation
为什么需要分布式训练?
随着模型规模和参数量的增大,对硬件的要求也变大(算力、内存)。
现实困境是单一设备有内存墙(模型需要的运算量提高很快→需要研发AI硬件(提高硬件的峰值算力)→简化或者删除其他部分(例如内存的分层架构))
最新模型训练的瓶颈(特别是对 NLP 和 推荐系统相关模型):通信带宽瓶颈(芯片内部、芯片间还有 AI 硬件之间的通信)。
Transformer 类模型大小平均每两年翻240倍,而AI 硬件上的内存大小仅以每两年翻2倍的速率增长。
训练 AI 模型时候所需要的内存一般比模型参数量还要多几倍的原因:训练时候需要保存中间层的输出激活值,通常需要增加3到4倍的内存占用。
容量和数据传输的速度大大落后于硬件的计算能力。
内存墙问题不仅与内存容量大小相关,也包括内存的传输带宽,且涉及到多个级别的内存数据传输。
例如,在计算逻辑单元和片上内存之间,或在计算逻辑单元和主存之间,或跨不同插槽上的不同处理器之间的数据传输。AI 硬件之间会遇到通信瓶颈,甚至比片上数据搬运更慢、效率更低。
terms
SOTA: state of the art 特定任务中目前表现最好的方法或模型
构建model的motivation是:超越现有的baseline/benchmark
benchmark: 当前目标最高的一个指标,如precision,recall等可量化的指标
baseline: 需要一套方法
标签:training,训练,AI,模型,Distributed,硬件,内存,数据传输,分布式 From: https://www.cnblogs.com/asandstar/p/17991751