跳到主要内容

多模态大模型训练太慢?BigMac开源新方案,显存省又算得快

20 0
AI摘要

多模态大语言模型训练面临算力与显存的平衡难题。小红书 dots infra 团队开源 BigMac 流水并行训练新范式,针对原生多模态场景,优化三模块(编码器、LLM主干、生成器)差异巨大的流水线,解决显存效率与计算效率的矛盾,推动多模态模型训练发展。

多模态训练陷入两难困境

处于大模型时代, 多模态技术正逐渐演变成核心驱动力, 可是呢, 其训练系统长时间被束缚于一个经典性难题, 就是当计算速度处于快速状态之际, 显存容量常常是不够充足的, 若要对显存予以节省, 那么训练速度却又会出现大幅度的降低, 这种难以做到兼顾的矛盾状态, 被冠名为多模态流水训练的帕累托前沿。

当下业界主要运用两种解决办法, 其一为计算高效类型, 把编码器与生成器分开运作, 虽说能够避开流水线出现空泡的情况, 然而激活显存会随着批次呈线性增长, 代价高昂。其二是显存高效类型, 把所有模块都放进同一条流水线, 虽说减少了显存的占用量, 可是极容易因为某个模块出现延迟致使整条流水线都在等待, 进而产生严重的尾部空泡。

随着模型规模不断扩大, 那两种传统设计的瓶颈愈发明显地暴露出来。在生产环境里, 仅仅单纯去追求速度或者显存的效率, 一概几乎都不可能去满足实际所需要求。研究者以及工程师们等急切无比地需要一种能够把两者同时予以优化的全新范式, 凭借此来冲破现有的性能方面的天花板, 从而达成更为高效的多模态模型训练流程。

多模态大模型训练太慢?BigMac开源新方案,显存省又算得快

创新嵌套流水线架构

针对上述所呈现的令人生畏的痛点, 小红书 Dots Infra 团队构思并推出了一种前所未有的别出心裁的解决方案。此方案内在的核心思想实则乃是去保留那个经过高度精心优化的 LLM 流水线, 将其用作调度的主要支撑架构, 而非去替换那些已然成熟的诸如 1F1B 之类的并行策略。凭借这样的办法途径, 以此来保障确保大规模 LLM 训练的基础设施稳定性能够得以持续维持。

团队设计出了一种机制, 名为“准依赖安全的嵌套流水线”, 它不会强行去改变LLM的执行节奏, 而是把模态编码器以及生成器的计算任务, 以智能的方式插入到输入已经就绪并且不会对LLM顺序产生影响的位置了, 这样的设计让调度变得更加灵活了, 既对原有流水线的逻辑予以了尊重, 又达成了多模块的协同工作。

这一架构产生了两大极为明显的优势, 其一, 编码器以及生成器的耗时波动不再传递到LLM流水线, 确保了主干任务能够稳定地向前推进, 其二, 算法层面将模态激活显存压制到O(1)级别, 不需要为每一个批次都留存激活状态, 彻底解决了显存爆炸的问题, 把速度和效率变成了并非只能二者选其一的情况。

工程化落地三大支柱

从理论方面的设计起始, 一直到实际开展训练, 其间横亘着具备复杂性特质的系统工程关卡。此开源项目针对这些具体环节专门实施了优化举措, 给出了三大核心组件。其一乃是全局时间线可视化, 在运行期间生成涵盖所有 Rank 的、阶 再加上完整句子: 段类型的以及模块类型的全局表格, 能够清晰地展示调度逻辑。

首先, 存在着一种并非明显可感的流水并行接口。算法工程师仅仅需要对模块的生产与被生产关系予以描述, 底层的阶段划分以及数据交接,还有跨设备通信事宜乃是依靠系统自动来进行处理。如此一来, 在单卡方面验证完毕的多模态实验, 便能够更为自然地拓展至流水并行环境之中, 极大程度地降低了迁移所需的成本。

多模态大模型训练太慢?BigMac开源新方案,显存省又算得快

排在第三的是一整套完整的, 用于调试以及可视化的工具链, 它可把训练迭代分解到算子段位, 助力开发者明晰每个Rank在特定时间节点的计算状况、空转情形以及依赖阻塞要点,在开启代价高昂的训练之前, 用户能够先行模拟不一样的配置, 预估对空泡以及吞吐的作用, 防止资源出现浪费。

实测性能显著提升

在对于 MLLM – Base 的测试里, 针对主干采用 Qwen3 – 30B – A3B 并搭配 ViT 编码器, 新的方案相较于计算高效的基线, 提速幅度处于 1.08 至 1.1 倍之间, 相较于显存高效的基线, 提速幅度在 1.6 至 1.9 倍之间。其中关键的指标是显存, 当批次不断增大时, 新方案的峰值显存能够保持平稳状态, 而基线方案由于保留激活最终致使出现 OOM 情况。

在更为复杂的 MLLM – Advanced 场景里, 增添 20B 的 MMDiT 生成器之后, 差异变得更为显著。基线方案在所有的测试批次当中, 都出现了内存溢出的情况。新方案依靠及时释放生成器侧激活, 成功避开了风险。相较于显存高效基线, 它依旧获得了 1.5 至 1.9 倍的加速, 并且显存一直维持稳定。

在系统需要同时处理编码器与生成器依赖的时候, 并且无法承受大量激活驻留或者严重空泡的情况下, 这一结果验证了嵌套流水线在高负载时的价值, 该方案展现出极强的鲁棒性, 该方案不仅解决了显存瓶颈, 还大幅提升了训练吞吐量, 为复杂多模态模型的训练提供了切实可行的技术路径。

生产环境验证与开源

此时此刻, 这项技术已然身为核心组件当中的一个, 于小红书的生产环境里正式开展运行, 与之相关的论文那篇名为《The Pareto Frontier of Latency and Memory in Multimodal LLM Training》的已经上传到了 arXiv, 团队与此同时发布了交互式的 PP Trace 示例, 用以供社区进行深入的研究以及复现。

就那些正遭受多模态训练显存以及速度两方面夹攻为难的研究者还有工程师来讲, 这份有着生产环境验证情况的开源代码具备相当大的参考意义。它给出了一套历经实战检验的解决办法, 有希望协助用户省下重新制作的时间, 加快多模态AI的研发进展。

获取全部代码以及文档可以借助官方仓库来实现, 供用户使用。将不同的PP搭配以及算子组合加以尝试, 以便可以最大限度地利用框架优势, 这应当是开发者需结合自身体验场景去做的。伴随多模态应用到处普及, 朝着更高效、更低成本方向促使AI技术得以发展而去推进提升以此让此类底层基础设施优化给予行业整体带来好处。

朝着多模态训练里头的显存跟速度之间的矛盾, 你觉得哪一种优化策略更有着长远价值? 欢迎于评论区去分享你的观点!

登录后参与评论

评论仅开放给已登录并完成邮箱绑定的用户。

评论 0

暂无评论。