DeepSpeed与Megatron的区别和联系

DeepSeedDeepSeed代表性功能MegatronMegatron代表性功能备注

GPU底层优化

开创性的全栈 GPU 内核设计FP6 量化更牛逼Fused CUDA Kernels

毕竟Megatron是Nvidia亲儿子,底层优化信手拈来。

数据并行更牛逼Zero系列的分布式数据并行方案优化器分片Megatron也做了类似Zero1的优化器分片,但数据并行没有deepspeed强
模型并行更牛逼Megatron的张量并行很牛

1、GPU底层优化

Megatron是Nvidia搞的,那必然对Nvidia GPU有着特定的优化。Megatron-Core 提供核心构建模块,例如注意力机制、转换器模块和层、归一化层和嵌入技术等,这些模块必然做了特定优化。

DeepSpeed也做了GPU底层优化,例如:DeepSpeed开创性的全栈 GPU 内核设计FP6 量化。

DeepSpeed/blogs/deepspeed-fp6/03-05-2024/README.md at master · microsoft/DeepSpeed · GitHub

2、数据并行

DeepSpeed的数据并行相比于Megatron做的更牛逼。

DeepSpeed数据并行有很多种策略,例如:Zero1、Zero2、Zero3、Zero++等,这些分布式策略可参考教程:

ZeRO++ 分布式数据并行 视频教程 《ZeRO++: Extremely Efficient Collective Communication for Large Model Training》-CSDN博客

Megatron做了分布式优化器(优化器分片类似于Zero1)。

DeepSpeed官方也用图示说明了,DeepSpeed的数据并行做的更牛逼。

该图描述了与单独使用 Megatron-LM 相比,DeepSpeed(将 ZeRO 驱动的数据并行性与 NVIDIA Megatron-LM 的模型并行性相结合)的系统吞吐量改进。

哈哈哈,DeepSpeed的数据并行于Megatron的模型并行结合,这是不是也说明了,Megatron的模型并行做的更好。

3、模型并行

哈哈哈,如上图所示,DeepSpeed的数据并行于Megatron的模型并行结合,这是不是也说明了,Megatron的模型并行做的更好。

DeepSeed官方教程里面,模型并行一节专门讲了将DeepSeed的数据并行与Megatron的模型并行集成。链接:Megatron-LM GPT2 - DeepSpeed

Megatron官方教程里面,也提到利用DeepSpeed和Megatron共同训练模型。[2201.11990] Using DeepSpeed and Megatron to Train Megatron-Turing NLG 530B, A Large-Scale Generative Language Model (arxiv.org)

哈哈哈,现在DeepSpeed与Megatron明显的合作共赢啊!

视频教程

该文档还在持续更新中,后续有必要视频教程的话,视频教程会放在这,欢迎关注。

串门的小马驹的个人空间-串门的小马驹个人主页-哔哩哔哩视频

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值