mirage-project/mirage

Mirage Persistent Kernel: Compiling LLMs into a MegaKernel

解決的問題

Mirage Persistent Kernel (MPK) 解決了多 GPU LLM 推論所帶來的高延遲問題。它透過將整個推論流程融合為單一的「巨核」,消除了啟動多個 GPU 內核的開銷以及它們之間的通訊瓶頸。

工作原理

MPK 作為一個編譯器與執行時系統,將 LLM 的計算圖轉換為單一的融合 GPU 內核。它不為每個運算分別啟動內核,而是在一次啟動中完成所有必要的計算與通訊。開發者透過串接融合運算(例如 rmsnorm_linear_layer)來定義內核的輸入、輸出與計算圖,然後將圖編譯為最佳化的可執行內核。

適用對象

專注於低延遲 LLM 推論與 GPU 優化之 ML 工程師與研究人員,希望在無需大量手動 CUDA 程式設計的情況下降低推論延遲。

主要亮點

  • 顯著降低延遲:將 LLM 推論延遲降低 1.2 倍至 6.7 倍。
  • 端對端融合:將計算與通訊融合為單次 GPU 內核啟動。
  • 自動編譯:透過高階 Python API 將 Hugging Face 模型編譯為巨核。
  • 整合性能分析:內建工具,可視化巨核內各任務的執行時間軸。

相關

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