论文

CuTeGen:基于 LLM 的代理框架,用于使用 CuTe 生成和优化高性能 GPU 内核

CuTeGen: An LLM-Based Agentic Framework for Generation and Optimization of High-Performance GPU Kernels using CuTe

摘要

高性能 GPU 内核对于现代机器学习系统至关重要,但开发它们仍然是一个手动、专家驱动的过程。最近的工作探索了使用 LLM 来自动生成内核,但生成的内核仍然达不到标准化基准上精心调整的参考。我们提出了 CuTeGen,这是一个代理 GPU 内核综合框架,它将内核开发视为 CuTe 抽象层上的结构化生成-测试-优化工作流程。 CuTeGen 与之前工作的区别有两个设计选择:以 CuTe 而不是原始 CUDA 为目标,它公开性能关键的结构,例如平铺和数据移动,同时保持足够的稳定性以进行迭代细化;以及延迟的分析计划,在内核的高级结构稳定之前保留底层性能反馈。在 KernelBench Level-1 和 Level-2 的 209 个任务中,CuTeGen 比 PyTorch 平均加速了 1.71$\times$,并且在每个任务生成成本相当的情况下优于之前的代理基线 CudaForge (0.89$\times$)。代码可在 https://github.com/taratt/cutegen.git 获取