Cursor、MoE学習メガカーネル「Mixture-of-Kittens」をオープンソース化
本文の状態
日本語全文を表示中
詳細モードで約6分の本文を読めます。
Cursor Research は大規模 MoE 学習用マーカーネル「Mixture-of-Kittens (MoK)」をオープンソース化し、GB300 NVL72 環境で通信効率を劇的に向上させた。
AI深層分析を開く2026年8月5日 11:35
AI深層分析
キーポイント
MoK の技術的特徴と性能
Cursor Research は MoE の通信・計算ステップを単一の決定論的カーネルに統合する「Mixture-of-Kittens (MoK)」を公開し、既存の最強パブリックベースライン比で最大 2.37 倍のスループット向上を実現した。
厳格なハードウェア要件
本技術は NVIDIA Blackwell SM100/SM103 GPU を備えた GB200 または GB300 NVL72 ラックでのみ動作可能であり、Python 3.12+ や CUDA 13.0+ の最新環境を必須とする。
双方向通信最適化のアプローチ
Cursor チームはプッシュ型転送の非効率性を解消するため、状況に応じてプルベースとプッシュベースを組み合わせる独自のスケジューリングを採用し、NVLink バンド幅利用率を最大 29% 向上させた。
対象となる利用シーン
DeepSeek-V3 様式の MoE モデルの事前学習や RL 後方学習など、大規模計算リソースを持つ組織向けの限定的だが高価値な用途に特化している。
CPU を介さないリングトークンバッファと完全な決定性
MoK は数百メガバイトの固定リングバッファを巡回させることで、トークンのドロップや CPU のバッファサイズ調整を不要にし、CPU-GPU 同期を完全に排除する。この手法はマクロバッチ境界でディスパッチとコンバインをインターリーブし、逆方向へのウォークにより順伝播の再計算を最小化する。
重要な引用
MoK fuses every MoE communication and computation step into a single deterministic kernel.
Cursor team reports up to 2.37x higher throughput than the strongest public baseline.
Pull-based dispatch delivers up to 29% higher NVLink bandwidth utilization under expert imbalance.
A ring token buffer removes the CPU from the loop
編集コメントを表示
編集コメント
Cursor Research が公開した MoK は、大規模モデル学習の通信ボトルネックを解決する画期的なアプローチを示している。ただし、その実用性は極めて特殊な高価なハードウェア環境に依存しており、一般的な開発現場での即座の導入は困難である。
Source Article
元記事を日本語で読む
本文に関係しない購読案内、埋め込み通知、サイト内プロモーションは除いています。
Cursor Research は、自社の Composer モデルを支える Mixture-of-Experts (MoE) 学習用のメガカーネル「Mixture-of-Kittens (MoK)」をオープンソース化しました。MoK は MoE の通信と計算のすべてのステップを単一の決定論的カーネルに統合しています。Cursor チームによると、この手法は既存の最強のパブリックベースラインと比較してスループットが最大 2.37 倍向上します。現在、MoK は数万基の GPU を用いた Composer の学習プロセスを支えています。
実装の可能性について
導入は可能ですが、ハードウェア要件は非常に高いです。MoK は GitHub で Apache-2.0 ライセンスで公開されていますが、NVIDIA Blackwell SM100 または SM103 GPU が必要です。つまり、GB200 NVL72 または GB300 NVL72 のラック環境が必須となります。また、Python 3.12+、PyTorch 2.10+、CUDA ツールキット 13.0+ も必要です。GPU 間のバッファリングには PyTorch の対称メモリ機能に依存しています。
この要件は、現実的な採用者を NVL72 容量を所有またはレンタルできる組織に限定します。フロンティア研究所、資金調達済みのモデルスタートアップ、GPU ネオクラウド、国立計算センターなどが対象です。一方、単一ノード構成のチームや 8 GPU 程度の小規模なショップでは導入は困難です。
適用範囲は限定的ですが、その価値は高いものです。DeepSeek-V3 スタイルの MoE モデルにおける事前学習やポストトレーニングが主な用途です。決定論的な性質により、オンポリシー RL のポストトレーニングや内部でのアブレーション研究にも有用です。関連する産業分野には、AI モデル開発、クラウド GPU インフラストラクチャ、コード生成ツール、定量的なリサーチなどが含まれます。
MoE レイヤーがボトルネックに
Cursor の以前の研究は計算側のカバーに重点を置いていました。研究チームは独自に MXFP8 と NVFP4 の学習カーネルを開発し、MoE 推論用の「warp decode」パスも実装しました。しかし、それらの設計では GPU 間の通信は別個に処理されることを前提としていました。
本番環境では、通信がボトルネックとなりました。MoE(Mixture of Experts)層は、エンドツーエンドのトレーニング時間の半分超を消費します。GB300 NVL72 へ移行すると状況は一変しました。NVL ドメイン内に 72 個の GPU を収容するラックでは、きめ細かいオーバーラップが可能になります。ただし、統合された Grace CPU は GPU に比べて低速です。そのため、CPU と GPU の同期は徹底的に最小化する必要があります。
重要な設計判断 3 つ
通信方向は演算ごとに選択します。既存のアプローチである DeepEP はプッシュベースの転送に依存しています。Cursor のマイクロベンチマークでは、プッシュ方式の方が一方の方向への総転送バイト数が少ないことが示されました。これにより、逆方向の NVLink ラーンがほとんど遊んでしまう状態になります。プルベースのディスパッチは、エキスパートの不均衡がある場合でも NVLink バンド幅の利用効率を最大 29% 向上させます。また、GPU 間での完了信号も不要になります。プッシュ方式によるディスパッチシグナリングは 103 µs かかったのに対し、プル方式では 18 µs で、約 5.8 倍の差がありました。MoK では、フォワードパスでプルベースのディスパッチとプッシュベースのコンバインを採用します。バックワードパスはこの逆で、プルベースのリバース・コンバインとプッシュベースのリバース・ディスパッチを行います。これら 4 つの動作を一つのスケジューリングテーブルで管理し、MoE ランタイム時間の 3% 未満のコストに抑えています。
オーバーラップの粒度は極端な中間地点にあります。Comet はきめ細かい一方、DeepEP は粗い粒度です。Cursor チームは、最適な点は両者の中間にあり、ワークロード依存であると主張しています。ヒューリスティックでは、エキスパートグループ化された GEMM に対して少なくとも 2 つの SM(Streaming Multiprocessor)波を確保することを目指します。Kimi 2.5 の形状、すなわち Composer 2.5 のベースモデルの場合、下限は 2,368 トークンです。測定されたレイテンシはこの見積もりとよく一致しています。
リングトークンバッファを採用することで、CPU をループから外すことができます。従来の手法ではトークンを捨てるか、CPU にバッファサイズを計算させる必要がありましたが、MoK は数百メガバイトの固定されたリングバッファを循環使用します。これはミニバッチ単位で動作し、マクロバッチ境界においてディスパッチとコンバインを交互に実行します。また、逆方向にループを回すことで、バックワード時のフォワード活性化の再計算を最小限に抑えています。
MoK はメガカーネルとして構築され、完全に決定論的です。BF16 と MXFP8 の精度モードをサポートしています。スケジューリングは Blackwell の Cluster Launch Control を通じて行われるため、ラック間 RDMA がその背後で直列化されることはありません。ルーター重みの勾配計算は、SonicMoE 方式の手法を SwiGLU バックワードに融合させることで処理されます。
image https://cursor.com/blog/mixture-of-kittens
結果
レイヤーベンチマークは、EP degree 64 の単一 NVL72 ラック内で実行されました。各 GPU はルーティング前に 2,048 トークンを保持します。比較対象のベースラインには、NCCL+PyTorch、DeepEP+PyTorch、DeepEP+TransformerEngine、HybridEP+Megatron が含まれます。テスト形状は Kimi K2.7 Code、GLM-5.2、Qwen3.5-397B-A17B、および DeepSeek-V4-Pro をカバーしています。
最速のベースラインと比較して、MoK は MXFP8 フォワードで最大 2.37 倍高速です。その他の数値は、MXFP8 バックワードが 1.78 倍、BF16 フォワードが 1.92 倍、BF16 バックワードが 1.58 倍となっています。エンドツーエンドテストでは、複数の GB300 NVL72 ラックにまたがる 512 GPU を使用しました。GPU あたりの秒間トークン数は 760.9 から 1,070.2 に上昇し、1.41 倍の向上を達成しています。
主なポイント
MoK は、NVL72 ラック向けに、すべての MoE(Mixture of Experts)の通信と計算を 1 つの決定論的なメガカーネルに統合します。
プッシュディスパッチとプッシュコンバインを採用することで、シグナリング時間を 103 マイクロ秒から 18 マイクロ秒へ短縮しました。
リングトークンバッファにより、ゼロトークンの損失を防止し、CPU と GPU の同期処理を完全に不要にしています。
既存の最速公開ベースライン比で最大 2.37 倍、512 GPU 環境でのエンドツーエンド性能では 1.41 倍の向上を実現しました。
ライセンスは Apache-2.0 ですが、Blackwell SM100/SM103、CUDA 13.0 以上、PyTorch 2.10 以上の環境が必要です。
原文を表示
Cursor Research has open-sourced Mixture-of-Kittens (MoK), the mixture-of-experts training megakernel behind its Composer models. MoK fuses every MoE communication and computation step into a single deterministic kernel. Cursor team reports up to 2.37x higher throughput than the strongest public baseline. It already powers Composer training across tens of thousands of GPUs.
Is it deployable
Yes, but the hardware floor is high. MoK is on GitHub under Apache-2.0. It requires NVIDIA Blackwell SM100 or SM103 GPUs, which means GB200 NVL72 or GB300 NVL72 racks. It also needs Python 3.12+, PyTorch 2.10+, and CUDA toolkit 13.0+. Inter-GPU buffers rely on PyTorch symmetric memory.
That limits realistic adopters to organizations that own or rent NVL72 capacity. Frontier labs, funded model startups, GPU neoclouds, and national computing centers fit. Single-node teams and 8-GPU shops do not.
Applications are narrow but high-value. They include pretraining and post-training of DeepSeek-V3-style MoE models. Determinism also makes it useful for on-policy RL post-training and internal ablations. Relevant industries are AI model development, cloud GPU infrastructure, code-generation tooling, and quantitative research.
MoE layer as the bottleneck
Cursor’s earlier work covered the compute side. The research team wrote its own MXFP8 and NVFP4 training kernels and a ‘warp decode’ path for MoE inference. Those assumed inter-GPU communication was handled separately.
In production, communication became the limiting factor. The MoE layer can consume more than half of end-to-end training time. Moving to GB300 NVL72s changed the problem again. A rack is 72 GPUs inside one NVLink domain, which allows fine-grained overlap. But the integrated Grace CPUs are slow relative to the GPUs. CPU-GPU synchronization therefore has to be minimized aggressively.
Three design decisions that matter
Communication direction is chosen per operation: Existing approaches such as DeepEP lean on push-based transfers. Cursor’s microbenchmarks show push moves fewer total bytes in one direction. That leaves the reverse NVLink lane mostly idle. Pull-based dispatch delivers up to 29% higher NVLink bandwidth utilization under expert imbalance. It also eliminates cross-GPU completion signals. Push dispatch signalling measured 103 µs against 18 µs for pull, roughly 5.8x. MoK therefore uses pull-based forward dispatch and push-based forward combine. The backward pass mirrors this with pull reverse-combine and push reverse-dispatch. One schedule table serves all four, costing under 3% of MoE runtime.
Overlap granularity sits between the extremes: Comet is fine-grained; DeepEP is coarse-grained. Cursor team argues the optimum is in the middle and workload-dependent. The heuristic targets at least two full SM waves per expert-grouped GEMM. For Kimi 2.5 shapes, the base model for Composer 2.5, the floor is 2,368 tokens. Measured latency matches that estimate closely.
A ring token buffer removes the CPU from the loop: The alternatives are dropping tokens or asking the CPU to size buffers. MoK instead cycles a fixed ring buffer of a few hundred megabytes. It does so at minibatch granularity, interleaving dispatch and combine at macrobatch boundaries. The ring is walked in reverse to minimize forward activation replay during backward.
MoK is built as a megakernel and is fully deterministic. It supports BF16 and MXFP8 precision modes. Scheduling runs through Blackwell’s Cluster Launch Control, so inter-rack RDMA does not serialize behind it. Router weight gradients use a SonicMoE-style calculation fused into the SwiGLU backward.
imagehttps://cursor.com/blog/mixture-of-kittens
Results
Layer benchmarks ran in a single NVL72 rack at EP degree 64. Each GPU held 2,048 tokens before routing. Baselines were NCCL+PyTorch, DeepEP+PyTorch, DeepEP+TransformerEngine, and HybridEP+Megatron. Shapes covered Kimi K2.7 Code, GLM-5.2, Qwen3.5-397B-A17B, and DeepSeek-V4-Pro.
Against the fastest baseline, MoK is up to 2.37x faster for MXFP8 forward. The other figures are 1.78x MXFP8 backward, 1.92x BF16 forward, and 1.58x BF16 backward. End-to-end testing used 512 GPUs across several GB300 NVL72 racks. Tokens per second per GPU rose from 760.9 to 1,070.2, a 1.41x gain.
Key Takeaways
MoK fuses all MoE communication and computation into one deterministic megakernel for NVL72 racks.
Pull dispatch plus push combine cuts signalling from 103 µs to 18 µs.
A ring token buffer drops zero tokens and removes CPU-GPU synchronization entirely.
Up to 2.37x over the fastest public baseline; 1.41x end-to-end on 512 GPUs.
Apache-2.0, but it demands Blackwell SM100/SM103, CUDA 13.0+, and PyTorch 2.10+.
Check out the GitHub Repo and Technical details. Also, feel free to follow us on Twitter and don’t forget to join our 150k+ML SubReddit and Subscribe to our Newsletter. Wait! are you on telegram? now you can join us on telegram as well.
Need to partner with us for promoting your GitHub Repo OR Hugging Face Page OR Product Release OR Webinar etc.? Connect with us
The post Cursor Open-Sources Mixture-of-Kittens (MoK): A Deterministic MoE Training Megakernel for GB300 NVL72 Racks appeared first on MarkTechPost.
同じ出来事を3媒体で確認
同じ出来事を扱う別媒体の記事です。見出しと公開時刻を比較できます。
News to Guide
ニュースの次に確認する
発表内容を、現在の料金や仕様と照らし合わせられる関連ガイドです。
今日のまとめ
AIデイリーブリーフで今日の重要ニュースをまとめ読み