1. 简介
主要介绍deepspeed,Megatron,OneFlow等开源训练工具。
2. deepspeed介绍
deepspeed是微软开源的模型训练框架. 主要有流水线并行, 以及ZeRO内存优化技术等.
2.1 3D 并行性:扩展到万亿参数模型
数据并行训练、模型并行训练和流水线并行训练
2.1.1 数据并行
最常见的 DNN 并行化训练方法是数据并行化,这种方法把输入数据分散到各个 workers中(每个worker拥有全部模型)运行。不幸的是,尽管在加速数据并行的性能优化方面取得了一些进展,但若要在云基础设施上训练就会产生很大的通信开销。而且,随着GPU 计算速度的飞快提升,所有模型训练的耗时瓶颈会更进一步转向通信环节。
2.1.2 模型并行
模型并行化是另一种并行化训练形式,这种方法是把算子分散到各个 worker 上进行计算,这通常用于训练大型 DNN 模型。本文中,模型并行指的就是把模型的不同layer放在不同的机器上,不涉及将同一个layer切分到不同机器上的场景。
下图是模型并行化,显示了一个计算时间线