mirage

把整个LLM推理塞进一个GPU内核,砍掉反复启动开销

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 基础设施 🍴 复刻 273 🐛 待处理 265 👀 关注 30
GitHub ↗
GitHub 星标 ★ 2594
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源项目,免费使用

项目预览

mirage 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类基础设施
开发团队mirage-project
定价模式🏷️完全免费
价格说明开源项目,免费使用
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议Apache-2.0
主要语言Cuda
GitHub 星标★ 2594
上线时间2024-05-08 00:00:00
代码更新2026-11-02
仓库体积20.8 MB
本站数据更新2026-11-03
维护状态活跃
收录时间2026-09-16
浏览次数1

项目介绍

Mirage 是一个面向大语言模型推理的持久化内核编译项目,核心思路是把整个 LLM 推理流程编译成一个单一的 MegaKernel,而不是像传统方案那样为每个算子分别启动 GPU 内核。它主要解决的是 LLM 推理中频繁内核启动、算子间数据搬运和调度开销过大的问题,尤其在小批量、低延迟场景下这些开销会显著拖慢响应。项目用 Cuda 实现,通过持久化内核让 GPU 上的计算单元常驻,把多个计算阶段融合进一个内核里执行,减少启动和同步成本。它属于基础设施层工具,目标用户是推理引擎开发者和需要极致延迟优化的团队,可以作为底层执行方案集成到现有推理栈中。项目目前处于成长阶段,星标约 2500,适合关注 GPU 内核融合与 LLM 推理加速方向的人跟进研究。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-09-16 · 当前星标 ★ 2594

使用教程

ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。

难度:进阶 约 20 分钟 部署方式:本地安装 7 步

环境要求

  • 支持 CUDA 的 NVIDIA GPU(项目用 Cuda 实现,README 未注明具体版本)
  • Python 3 与 pip 环境
  • git(需支持 --recursive 拉取子模块)
  • 可编译 Cuda 扩展的本地开发环境(pip install -e . 会从源码构建)

安装与启动步骤

  1. 1克隆 mpk 分支源码

    README 要求带 --recursive 拉取子模块,并指定 mpk 分支,否则不是 Persistent Kernel 版本。

    git clone --recursive --branch mpk https://www.github.com/mirage-project/mirage
  2. 2进入项目目录

    切换到克隆下来的 mirage 目录,后续安装与运行都在该目录下进行。

    cd mirage
  3. 3源码安装

    以可编辑模式安装 MPK,会从源码构建,耗时较长,加 -v 可看到详细编译日志。

    pip install -e . -v
  4. 4设置 MIRAGE_HOME

    把环境变量指向当前源码根目录,供运行时定位 Mirage 相关文件。

    export MIRAGE_HOME=$(pwd)
  5. 5运行原生内核 demo

    先用原生 Triton 和 FlashInfer 内核跑通 Qwen3-8B demo,作为后续对比基线。

    python demo/qwen3/demo.py
  6. 6编译并运行 MegaKernel

    加上 --use-mirage 让 MPK 把模型编译成 megakernel 后执行,观察延迟变化。

    python demo/qwen3/demo.py --use-mirage
  7. 7开启 profiling

    再加 --profiling 可视化每个任务的执行时间线,用于定位性能瓶颈。

    python demo/qwen3/demo.py --use-mirage --profiling

关键配置

配置项必填说明示例
MIRAGE_HOME是指向 Mirage 源码根目录,安装后需导出供运行时使用/home/user/mirage
--use-mirage否demo 参数,启用 MPK 编译并执行 megakernelpython demo/qwen3/demo.py --use-mirage
--profiling否demo 参数,可视化各任务的执行时间线python demo/qwen3/demo.py --use-mirage --profiling

如何确认成功

demo 脚本正常结束且终端无报错;加 --use-mirage 后能完成 megakernel 编译并输出推理结果。

常见问题

Q:为什么 pip 装不到预编译包?

A:README 说明团队正在制作 MPK 的预编译 wheel(2025/06/19 更新),当前最快方式是按文档从源码安装。

Q:怎么对比 megakernel 的加速效果?

A:先运行 python demo/qwen3/demo.py 走原生 Triton/FlashInfer 内核,再加 --use-mirage 运行同一 demo 对比延迟。

Q:如何看到每个任务的耗时分布?

A:在命令后追加 --profiling,即可可视化各任务的执行时间线。

Q:支持的模型和 Python/GPU 版本是什么?

A:README 只给出了 Qwen3-8B 的示例脚本,未明确列出模型支持范围与版本要求,需以仓库当前文档为准。

注意事项

  • 必须使用 --branch mpk 分支,主分支不是 MPK 版本。
  • clone 时不要省略 --recursive,否则子模块缺失会导致安装失败。
  • pip install -e . -v 会本地编译 Cuda 扩展,耗时较长,请预留编译时间。
  • export MIRAGE_HOME 只在当前 shell 生效,建议写入 shell 配置文件以便持久化。

核心亮点

  • 将多算子融合为单一持久化 MegaKernel,减少内核启动与调度开销
  • 针对 LLM 推理低延迟场景设计,小批量下收益更明显
  • 用 Cuda 直接实现,贴近硬件,便于做底层性能调优

不足之处

  • 项目较新,文档和社区生态还在早期,接入成本可能偏高
  • 与主流推理框架的集成方案尚不明确,通用性待验证

适用场景

  • 在线对话场景下降低单次推理首 token 延迟
  • 边缘或单卡部署时减少内核启动开销
  • 推理引擎开发者研究内核融合与持久化内核方案

替代项目

vLLM、TensorRT-LLM

上一篇:llm-inference-handbook

下一篇:llm-ollama

同类项目推荐

portkey-python-sdk 开源

一键接入多模型,让 AI 应用稳定又安全

Build reliable, secure, and production-ready AI apps easily.

★ 118 2026-08-09
openinference 开源

给 AI 应用装上标准监控,一键追踪 LLM 调用全链路

OpenTelemetry Instrumentation for AI Observability

★ 1302 2026-08-09
langsmith-sdk 开源

给 LLM 应用装上黑匣子,调用全记录、效果可对比

This repo was archived on Oct 16, 2026. Python SDK moved to langchain-ai/langsmith-p···

★ 1083 2026-09-12
vllm-metal 开源

让 Mac 也能跑 vLLM 高吞吐推理

Community maintained hardware plugin for vLLM on Apple Silicon

★ 1950 2026-10-14
ai-gate 开源

一个应用搞定所有AI聊天,免密钥免切换

Why juggle 6 AI tools? AI Gate does it. No API keys. A single gateway to ChatGPT, Ge···

★ 221 2026-08-09
tokencost 开源

输入模型和 token 数,秒估 400+ 大模型成本

Easy token price estimates for 400+ LLMs. TokenOps.

★ 2003 2026-08-09
ccNexus 开源

统一管理 AI API,自动轮换端点,用量一目了然

Intelligent API gateway for Claude Code and Codex CLI - rotate endpoints, monitor us···

★ 973 2026-08-09
aiops-modules 开源

把 AWS 上 AI 基建打包成积木,快速搭建和运维

AIOps modules is a collection of reusable Infrastructure as Code (IaC) modules for M···

★ 104 2026-08-09