AI 新发布 ·

Olmo-core 3:架构、基准测试与扩展性能解析

Olmo-core 3 是一个开放式训练框架,旨在高效地将混合专家模型扩展至数万亿参数规模。

重点
  • 由 Allen Institute for AI 为大型混合专家模型打造。
  • 从完全分片数据并行转向分布式数据并行。
  • 在测试硬件上提供高达 2.7 倍的训练吞吐量。
  • 已在 512 个 GPU 上完成高达 1.2 万亿参数的测试。
本文内容
  1. 什么是 Olmo-core 3?
  2. Olmo-core 3 如何处理 MoE 训练?
  3. Olmo-core 3 训练吞吐量与基准测试
  4. MXFP8 支持与内存效率
  5. 扩展极限与测试观察
  6. 常见问题

什么是 Olmo-core 3?

Olmo-core 3 是由 Allen Institute for AI 开发的开放式训练基础设施框架,用于训练大型混合专家语言模型。它既是未来 Olmo 版本的基础系统之一,也向研究人员公开了底层工具。

该框架旨在解决在 GPU 集群上扩展稀疏模型时通常出现的高通信和协调成本问题。它的架构设计能够将训练扩展至万亿参数范围,同时不损失计算效率。

Olmo-core 3 一览
开发者
Allen Institute for AI (Ai2)
主要用途
适用于大型 MoE 的可扩展训练基础设施
架构转变
从 FSDP 转向采用常驻专家的 DDP
支持精度
MXFP8 和 BF16
最大测试规模
2.38 万亿参数(容量测试)

Olmo-core 3 如何处理 MoE 训练?

Olmo-core 3 用分布式数据并行取代了先前的完全分片数据并行方法。它不再需要在每个 mini-batch 中跨 GPU 重新收集和分片模型权重,而是将专家常驻于 GPU 内存中,并将 token 数据直接路由给它们。

Olmo-core 3 中的硬件分布依赖三种核心方法。专家并行将专家池划分到各个 GPU 上;流水线并行将网络层拆分到不同 GPU 组;分布式优化器则将优化器状态拆分到不同硬件上,而不是在所有地方重复复制。

为了降低路由开销,该技术栈将路由元数据保留在 GPU 上,以便 CPU 更快地对任务进行排队。它还依赖分组 GEMM 来合并较小的专家计算,并利用按行专家并行将输入数据直接放置到专家缓冲区中。

Olmo-core 3 训练吞吐量与基准测试

与早期的框架版本相比,Olmo-core 3 提供了更高的处理速度。Allen Institute for AI 报告称,在 8 个 NVIDIA B300 GPU 的基准测试中,一个 470 亿参数的 MoE 达到了每 GPU 每秒 52,000 个 token,高于早期 FSDP 实现的每秒 19,400 个 token。

2.7x8 个 B300 GPU 上的吞吐量提升
858 TFLOP/s512 个 GPU 上每 GPU 峰值计算量
21%使用 MXFP8 相比 BF16 的吞吐量增益

在容量扩展测试中,团队将专家数量从 8 个增加到 128 个,同时每个 token 路由 4 个专家,保持激活参数固定在约 32 亿。即使总模型参数从 46 亿激增至 470 亿,训练吞吐量下降仍低于 5%。

MXFP8 支持与内存效率

Olmo-core 3 集成了对 MXFP8 的支持,这是一种使用更少比特存储数值的低精度格式。这种精简减轻了计算负担,并降低了分布式训练期间 GPU 之间传输的数据量。

在跨 4 个 NVIDIA B300 GPU 的对照测试中,启用 MXFP8 比基线 BF16 精度提高了约 21% 的吞吐量。峰值激活内存消耗从 103 GiB 降至 95 GiB,大部分效率提升源自前馈运算和专家数据传输。

注意

Allen Institute for AI 指出,只有当数值节省超过格式转换的计算成本时,MXFP8 才能带来收益。

扩展极限与测试观察

Olmo-core 3 在系统基准测试中展现出了超过一万亿参数的扩展能力。在运行每个 token 具备 583.6 亿激活参数的 1.2 万亿参数模型时,该框架在 512 个 NVIDIA B300 单元上达到了每 GPU 858 TFLOP/s,测试期间采用随机路由以测试系统极限。

在采用 DeepEP v2 通信的实验性运行中,该框架在短暂的容量测试中配置了高达 2.38 万亿个参数。研究人员指出,此实验旨在证明硬件扩展边界,而非持续的长期训练质量。

研究报告还指出了一种名为 token 操纵(token gerrymandering)的失效模式,即路由平衡得分看似有所改善,但物理分布却变得不那么均匀。此外,由于个别专家处理的 token 较少而降低其学习率,未能改善模型结果。

常见问题

什么是 Olmo-core 3?
Olmo-core 3 是由 Allen Institute for AI 开发的开源训练基础设施框架。它旨在训练规模达到万亿参数级别的混合专家语言模型。
谁开发了 Olmo-core 3?
Olmo-core 3 由 Allen Institute for AI (Ai2) 开发。它是该机构支持 Olmo 模型家族的开源训练框架的一部分。
Olmo-core 3 相比早期 Olmo-core 版本有何改进?
Olmo-core 3 用分布式数据并行取代了完全分片数据并行,将模型专家常驻于 GPU 内存中。这种设计通过消除重复的权重收集步骤,在测试硬件上实现了高达 2.7 倍的训练吞吐量提升。
Olmo-core 3 支持哪些精度格式?
Olmo-core 3 支持 BF16 和较低精度的 MXFP8 格式。基准测试表明,在测试的 NVIDIA B300 配置上,MXFP8 将训练吞吐量提高了约 21%,并降低了峰值激活内存。
在 Olmo-core 3 上测试的最大规模是多少?
Olmo-core 3 在 512 个 NVIDIA B300 GPU 上针对 1.2 万亿参数模型进行了基准测试,达到了每 GPU 858 TFLOP/s。使用 DeepEP v2 的短暂容量测试实现了 2.38 万亿参数的配置。

资料来源:Hugging Face

想让 AI 给出的答案是你的品牌?

免费检查你的网站对 ChatGPT、Gemini 与 Perplexity 准备得有多好,约十秒完成。

延伸阅读:如何让你的品牌被 ChatGPT 引用