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モデルズーブからモデルを自動的にメガカーネルに変換。
  • 統合プロファイリング: メガカーネル内の各タスクの実行タイムラインを可視化するツールを内蔵。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト