在源码解读第一篇中,我们讲解了如何做分布式环境初始化,即按照DP/TP/PP对进程进行分组,并为每个进程指定GPU。在这一章中,我们将一起读模型并行部分:如何切分模型,并搬入分布式环境定义好的DP/TP/PP组中。
【本文将提供】
- 详细的图解。画图说明代码的设计架构,讲清代码想做一件什么事。
- 详细的代码注释。在图解的基础上,提取核心代码部分,并附上注释。
【如何利用本文提高源码阅读效率】
- 先看一~三部分。了解模型并行的设计思想、整体框架及入口函数。
- 打开Megatron源码,找到入口函数,开始阅读。
- 阅读中的每一块细节,可参考四~八部分。
【大模型预训练系列文章】