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 層」以簡化生產整合。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案