论文

AutoMegaKernel:用于自重定向巨核合成的静态检查代理工具

AutoMegaKernel: A Statically-Checked Agent Harness for Self-Retargeting Megakernel Synthesis

AI 基础设施模型部署

摘要

AutoMegaKernel (AMK) 将 HuggingFace Llama 系列模型编译为单个持久协作 CUDA 内核,该内核在一次启动中运行整个前向传递,无需为每个模型手写 CUDA。贡献的是系统,而不是原始速度。冻结的调度 IR 验证器通过静态图检查(不是机械化证明)静态地证明无死锁和无竞争,因此不安全的代理提出的调度在启动之前会被拒绝:在 7,160 个对抗性调度(6,091 个不安全)中,它的错误接受为零,并接受了所有 360 个真实的降低。同一源从一个代码库重新定位 sm_80/sm_90/sm_120,为 10 个受支持模型中的 10 个自动生成正确的巨型内核,并在真实的 SmolLM2-135M 检查点上重现 HuggingFace 逐个词元的贪婪解码(困惑度匹配 2.5e-7)。无人值守、代理可驱动的自动研究循环可在其自身基线上自我改进巨型内核 (1.25-1.72x)。搜索发现的 int8 (W8A16) 超级内核在 NVIDIA 数据中心推理组的批量 1 解码中击败了 CUDA 图形化的 cuBLAS bf16:L4 高达 1.33 倍,当前一代 L40S 1.25-1.27 倍,A10G 高达 1.08 倍,以及消费类 RTX 5090 1.19-1.23 倍。排序并不是带宽的干净函数(864 GB/s L40S 击败了 600 GB/s A10G);区别是推理类和训练类。 AMK 在高带宽训练级 A100/H100 上落后于 cuBLAS,其中Harness定位了跨 SM 同步瓶颈;我们清楚地报告差距。这是解码位置 0 处的精度不对称(W8A16 与 bf16)比较;最大的真实检查点是TinyLlama-1.1B。代码和工具:https://github.com/RightNow-AI/AutoMegaKernel