cursor/mixture-of-kittens

Mixture-of-experts (MoE) training megakernel for NVL72s

解决的问题

Mixture-of-Kittens (MoK) 解决了在高端 NVIDIA Blackwell NVL72 系统上训练 Mixture-of-Experts (MoE) 模型时的效率瓶颈。它特别针对由 CPU-GPU 同步引起的开销,以及 MoE 训练期间计算与通信分离所导致的延迟问题,这些问题常常会拖慢训练过程。

工作原理

MoK 是一个确定性的「巨核」,将所有 MoE 计算和通信融合到一个 CUDA 内核中。通过这种方式,它可以在可配置的粒度上重叠计算与 GPU 间网络通信,并完全消除对 CPU-GPU 同步的需求。它支持 BF16 和 MXFP8 精度格式,并处理前向和反向传播。

适用人群

本项目专为使用 NVIDIA Blackwell GPU(SM100 或 SM103)和大规模 MoE 训练的研究人员与工程师设计,例如那些训练生产级 LLM 的人。

主要亮点

  • 高性能:与最快基线相比,MXFP8 前向传播最高快 2.37 倍,BF16 前向传播最高快 1.92 倍。
  • 融合内核:将计算与通信合并为单一操作,以最大化硬件利用率。
  • 精度支持:支持 BF16 和 MXFP8,以实现优化训练。
  • 双层 API:提供低层「Ops 层」以直接调用 CUDA 内核,以及高层「Functional 层」以简化生产集成。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目