mirage-project/mirage
Mirage Persistent Kernel: Compiling LLMs into a MegaKernel
何を解決するか
Mirage Persistent Kernel (MPK) は、マルチGPU LLM推論に関連する遅延問題に対処します。複数のカーネル起動とGPU間の通信のオーバーヘッドを排除することで、推論遅延を1.2倍から6.7倍まで削減します。
動作方法
MPKは、LLM推論を1つの「メガカーネル」に変換するコンパイラおよびランタイムシステムです。このメガカーネルは、1回の起動ですべての計算と通信を処理する統合GPUカーネルです。ユーザーは、RMSNormとLinearレイヤーを組み合わせるなどの融合演算をチェーンし、テンソルの割り当てを指定することで計算グラフを定義します。システムはこのグラフを、GPU上で実行可能な高パフォーマンスで永続的なカーネルにコンパイルします。
対象ユーザー
CUDAとPyTorchを使用してマルチGPU環境での推論遅延を低減したい、LLM推論最適化に取り組む開発者や研究者。
主な特徴
- エンドツーエンドGPU融合: 必要なすべての計算と通信を1つのカーネル起動に統合。
- 顕著な遅延削減: ネイティブなTritonおよびFlashInferカーネルと比較して1.2倍から6.7倍の高速化を達成。
- 自動変換: Hugging Faceモデルズーブからモデルを自動的にメガカーネルに変換。
- 統合プロファイリング: メガカーネル内の各タスクの実行タイムラインを可視化するツールを内蔵。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト