Mixture-of-Kittens: MoE Megakernel for NVL72s

Stuart H. Sul, Nash Brown, Henry Wildermuth, William Lin, Federico Cassano +1 more
9/28/2026
cs.DCcs.LG

No official code found. Best implementation: cursor/mixture-of-kittens (596 stars, Apache-2.0, last commit 2026-08-14).

Abstract

AI accelerator systems are rapidly consolidating into scale-up architectures, where tens to thousands of GPUs communicate over high-bandwidth, single-hop fabrics. We find that existing Mixture-of-Experts (MoE) training systems, optimized for conventional scale-out networks, transfer poorly to this setting, often running slower than a naive baseline built with PyTorch and NCCL. With industry roadmaps pointing toward even larger scale-up domains, understanding the performance tradeoffs of this hardware regime is increasingly important. We present Mixture-of-Kittens (MoK), an MoE training system designed for Nvidia NVL72. MoK builds on three insights that unlock performance on scale-up domains: (1) choosing push- or pull-based communication per operator, (2) restructuring the computation-communication overlap, and (3) fully eliminating CPU-GPU synchronization. MoK distills these insights into a single deterministic training megakernel that fuses token dispatch, shared and routed expert FFNs, and token combine. Across MoE layer shapes from four widely used open-weight models, MoK delivers up to $2.37\times$ the throughput of the strongest publicly available baseline. In a production run on 512 GPUs spanning multiple GB300 NVL72 racks, MoK improves end-to-end training throughput by $1.41\times$.

View on arXivView PDF

Code Implementations(1)

Apache-2.0

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

59678Jul 29, 20262 months agoApache-2.0

Similar Papers

Cite this paper

@article{sul2026mixtureofkittens,
  title  = {Mixture-of-Kittens: MoE Megakernel for NVL72s},
  author = {Stuart H. Sul and Nash Brown and Henry Wildermuth and William Lin and Federico Cassano and Christopher Ré},
  year   = {2026},
  eprint = {2609.36070},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2609.36070v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2609.36070.svg)](https://codeofpaper.com/paper/2609.36070)

Discussion