GPU 核心的自動研究。提供任何 PyTorch 模型,然後去睡覺,醒來後就能獲得優化的 Triton 或 CUDA C++ 核心。

靈感來自 @karpathy/autoresearch -- 該專案展示了用於 LLM 訓練研究的自主 AI 代理。AutoKernel 將相同的理念應用於 GPU 核心優化:代理修改一個檔案,運行固定評估,保留或撤銷更改,然後無限重複。

提供 AutoKernel 任何 PyTorch 模型。它將會:

代理閱讀 program.md -- 「研究組織程式碼」 -- 其中包含自主運行的全面說明。它一次編輯一個核心的 kernel.py,運行 bench.py(包含 5 階段正確性檢查 + roofline 分析的固定基準測試),然後保留或撤銷更改。協調器使用 Amdahl 定律決定何時進入下一個核心。

每個實驗大約需要 90 秒。這意味著每小時約 40 個實驗,過夜約 320 個實驗,涵蓋所有核心。

需求:NVIDIA GPU(已在 H100/A100/RTX 4090 上測試過),Python 3.10+,uv。

在此目錄中啟動 Claude、Codex 或任何編碼代理:

program.md 的內容有意設計得非常全面,以便代理能夠運行 10 小時以上而不會卡住。它包含一個 6 層優化劇本、決策框架、崩潰處理和 Amdahl 定律推理。

涵蓋現代深度學習核心操作的 9 種核心類型:

每種核心在 reference.py 中都有一個 PyTorch 參考實現,在 kernels/ 中有一個入門級 Triton 核心,在 kernels/cuda/ 中有一個入門級 CUDA C++ 核心。

自包含的模型定義隨 AutoKernel 一起提供(無需 transformers 函式庫):

對於 HuggingFace 模型( uv sync --extra models ):

AutoKernel 與 KernelBench 整合,KernelBench 是評估 AI 生成 GPU 核心的標準基準測試(涵蓋 250 多個問題,分為 4 個難度等級)。雖然大多數 KernelBench 評估使用一次性 LLM 生成,但 AutoKernel 對每個問題運行 50-300+ 次迭代優化實驗 -- 系統地探索優化空間,而不是猜測。

代理閱讀 kernelbench/program_kb.md 以獲取 KernelBench 特定優化說明:如何編寫 ModelNew 類別,何時使用 CUDA C++ 而非 Triton,每個問題級別的融合策略,以及為 KernelBench fast_p 指標調整的編輯-基準測試-保留/撤銷循環。

將優化後的核心匯出到 HuggingFace Hub 以方便分發。使用者可以通過一行程式碼載入您的核心:

雙後端:Triton + CUDA C++。Triton 用於快速迭代(類似 Python 的語法,幾秒鐘內編譯完成)。CUDA C++ 用於最大化效能(通過 wmma、PTX 指令集、無共享記憶體銀行衝突的佈局直接存取 Tensor Core)。Triton 的效能通常可達到 cuBLAS 的 80-95%;CUDA C++ 可以匹敵甚至超越它。兩個後端共享相同的 kernel_fn() 介面 -- bench.py 在兩者上運行結果相同。

正確性優先。基準測試在測量效能之前,會先檢查核心輸出是否與 PyTorch 相符。一個快速但錯誤的核心會被立即撤銷。這可以防止代理通過產生垃圾來「優化」。

Amdahl 定律協調。協調器根據影響程度進行優先排序。一個佔 60% 核心的 1.5 倍加速(整體 1.25 倍)優於一個佔 5% 核心的 3 倍加速(整體 1.03 倍)。當邊際效益遞減時,它就會停止。

單一修改檔案。代理只修改 kernel.py。範圍保持可控,差異可審查,撤銷乾淨。

TSV 日誌記錄。結果會寫入一個純粹的 results.tsv 檔案。人類可讀,git 友好,易於解析,無需基礎設施。

每個實驗都會記錄到 results.tsv(製表符分隔):

此專案是 GPU 核心的自動研究 -- 直接受到 Andrej Karpathy 的 autoresearch 的啟發,這是關於自主 AI 代理進行 LLM 訓練的原始實驗。Karpathy 證明了 AI 代理可以在一夜之間運行數百次實驗,系統地探索搜尋空間並記錄所有結果。AutoKernel 將相同的循環 -- 代理編輯一個檔案,運行固定評估,保留或撤銷 -- 套用到使用 Triton 和原生 CUDA C++ 的 GPU 核心優化領域。

KernelBench 的整合基於 Stanford Scaling Intelligence Lab 的 Simon Guo、Sean Resta 等人的工作。他們的論文「KernelBench: Can LLMs Write GPU Kernels?」(2025) 建立了評估 AI 生成 GPU 核心的標準基準測試。AutoKernel 通過應用迭代優化(每個問題 300+ 次實驗)而不是一次性生成來擴展此功能。KernelBench 資料集和評估協議:ScalingIntelligence/KernelBench。

由 RightNow AI 開發。如需企業級 GPU 優化,請查看 RightNow Enterprise。

GPU 核心的自動研究。提供任何 PyTorch 模型,然後去睡覺,醒來後就能獲得優化的 Triton 核心。