Repolode
RightNow-AI

RightNow-AI/autokernel

一套自主 Agent 流程,可分析 PyTorch 模型并用 Triton 或 CUDA C++ 优化其中的瓶颈 GPU 内核。

Star
1,620
Fork
164
未关闭 Issue
16
最近提交
前天

这是什么?

AutoKernel 接收任意 PyTorch 模型,用 torch.profiler 按 GPU 耗时对内核排序,并将耗时最高的若干内核抽取为独立的 Triton 或 CUDA C++ 内核。编码 Agent 每次只修改一个内核文件,运行包含五阶段正确性检查和 roofline 分析的固定基准测试,并决定保留或回滚改动。调度器基于 Amdahl 定律判断何时转向下一个内核。

项目面向 NVIDIA GPU,内置 matmul、softmax、layernorm、rmsnorm、flash attention、融合 MLP、交叉熵、旋转位置编码和 reduce 等起始内核,并附带 GPT-2、LLaMA、BERT 的独立模型定义。它还集成了 KernelBench 基准,可对其问题进行迭代优化。实验结果记录在 TSV 文件中,优化后的内核可导出到 HuggingFace Hub。

核心功能

  • 01对任意 PyTorch 模型做性能分析,按 GPU 耗时排序内核并区分计算密集或访存密集。
  • 02通过 --backend 参数将瓶颈内核抽取为 Triton 或 CUDA C++ 文件。
  • 03性能测量前先运行多阶段正确性检查,错误的快速内核会被直接回滚。
  • 04依据 Amdahl 定律按端到端影响排定内核优化顺序。
  • 05将优化后的内核放回完整模型中验证端到端正确性并报告总加速比。
  • 06集成 KernelBench,并可将内核导出到 HuggingFace Hub。

适用场景

  • 通过夜间自动优化最慢的 GPU 算子,加速自定义 PyTorch 模型的推理或训练。
  • 在边界清晰的 GPU 性能任务上试验自主编码 Agent。
  • 基于 KernelBench 问题评估 AI 生成内核与 PyTorch 参考实现的性能差异。
  • 将手工调优的 Triton 或 CUDA 内核打包并分享到 HuggingFace。

快速上手

  1. 1

    安装 uv(或按 README 中的官方 uv 安装说明操作)

  2. 2

    克隆仓库

    git clone https://github.com/RightNow-AI/autokernel.git
  3. 3

    在克隆下来的目录中安装依赖

    uv sync
  4. 4

    运行一次性设置以生成测试数据和基线,然后验证基准测试

    uv run prepare.py

使用前须知

  • 需要 NVIDIA GPU;README 中仅报告在 H100、A100 和 RTX 4090 上测试过。
  • 需要 Python 3.10+ 和 uv。
  • 运行优化代理需要额外的编码代理,例如 Claude 或 Codex。

收录于专题

标签

常见问题

autokernel 是什么?
一套自主 Agent 流程,可分析 PyTorch 模型并用 Triton 或 CUDA C++ 优化其中的瓶颈 GPU 内核。 AutoKernel 接收任意 PyTorch 模型,用 torch.profiler 按 GPU 耗时对内核排序,并将耗时最高的若干内核抽取为独立的 Triton 或 CUDA C++ 内核。编码 Agent 每次只修改一个内核文件,运行包含五阶段正确性检查和 roofline 分析的固定基准测试,并决定保留或回滚改动。调度器基于 Amdahl 定律判断何时转向下一个内核。
autokernel 可以免费使用吗?用的什么许可证?
autokernel 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
autokernel 还在维护吗?
活跃维护中。autokernel 最近一次提交是在 2026年11月5日。
autokernel 适合用来做什么?
通过夜间自动优化最慢的 GPU 算子,加速自定义 PyTorch 模型的推理或训练。 在边界清晰的 GPU 性能任务上试验自主编码 Agent。 基于 KernelBench 问题评估 AI 生成内核与 PyTorch 参考实现的性能差异。 将手工调优的 Triton 或 CUDA 内核打包并分享到 HuggingFace。
autokernel 怎么安装和运行?
安装 uv(或按 README 中的官方 uv 安装说明操作) 克隆仓库: git clone https://github.com/RightNow-AI/autokernel.git 在克隆下来的目录中安装依赖: uv sync 运行一次性设置以生成测试数据和基线,然后验证基准测试: uv run prepare.py
在哪里获取 autokernel?
源代码和安装说明在 GitHub 上:https://github.com/RightNow-AI/autokernel

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目