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 模型編譯為巨核。
- 整合性能分析:內建工具,可視化巨核內各任務的執行時間軸。
相關
- 專案
- 專案
- 專案
- 專案
- 專案