2020 年,最轰动的 AI 新闻莫过于 OpenAI 发布的 GPT-3 了。它的1750亿参数量及其在众多NLP任务上超过人类的出众表现让人们开始坚信:大模型才是未来。但与之带来的问题是,训练超大模型所需的算力、存储已不再是单机就能搞定。
据 NVIDIA 估算,如果要训练GPT-3 ,即使单个机器的显存/内存能装得下,用 8 张 V100 的显卡,训练时长预计要 36 年;即使用 512 张 V100 训练也需要将近 7 个月;如果拥有 1024 张 80GB A100, 那么完整训练 GPT-3 的时长可以缩减到 1 个月。
除去硬件资源这个经济问题,在技术层面,意味着训练大模型一定是一个分布式问题。因为算力需求还是一个相对容易解决的问题,毕竟拥有大集群的组织并不只有 OpenAI 一家,而如何解决上千块 GPU 解决分布式训练问题才是关键。
过在实际训练中,PyTorch 、 Megatron、DeepSpeed 都走了一条非常长的弯路。不仅是弯路,你还会发现 Megatron 的代码只能被 NVIDIA 的分布式训练专家所复用,它对于 PyTorch 的算法工程师而言门槛极高,以至于任何想要用 PyTorch 每出现一个分布式大模型的算法工程师,都得先等 NVIDIA 开发完才能再使用 Megatron 提供的模型。
在分布式训练领域拥有独特的设计和视角,OneFlow 解决了分布式训练中的各种并行难题,因此在大规模预训练模型的场景下用 OneFlow 分布式训练更易用也更高效。
据悉,OneFlow 即将在 5 发布的大版本 OneFlow v0.4.0 起,将提供兼容 PyTorch 的全新接口以及动态图等特性。而在 v0.5.0 版本,OneFlow 预计全面兼容 PyTorch, 届时用户可将 PyTorch 模型训练脚本一键迁移为 OneFlow 的训练脚本。此外, OneFlow 还会提供 Consistent 视角的分布式 Eager,用户可以既享受动态图的易用性,又可以非常方便地进行各种分布式并行训练
私我“资料” 获取!
相关文章
猜你喜欢
成员 网址收录40406 企业收录2984 印章生成241632 电子证书1079 电子名片61 自媒体64547