Towards Robust Agentic CUDA Kernel Benchmarking, Verification, and Optimization
Robert Tjarko Lange, Qi Sun, Aaditya Prasad, Maxence Faldor, Yujin Tang, David Ha
TL;DR
The paper tackles the gap between high-level AI-assisted software engineering and low-level CUDA kernel optimization by introducing robust-kbench and an agentic pipeline that translates PyTorch code into CUDA kernels, optimizes their runtimes via evolutionary search, and verifies correctness with LLM-based soft verifiers. It demonstrates that, within a robust evaluation setting, the evolved CUDA kernels can outperform eager PyTorch implementations on practical forward and backward tasks, while also fusing operations and enhancing hardware verification efficiency. Key contributions include a robust benchmarking harness, a soft-verification workflow, and an end-to-end agentic framework with open-source benchmarks and kernels, enabling more generalizable kernel optimization under realistic testing conditions. This work advances practical GPU acceleration for ML workloads and offers a blueprint for reliable, reproducible kernel optimization in production pipelines.
Abstract
Recent advances in large language models (LLMs) demonstrate their effectiveness in scaling test-time compute for software engineering tasks. However, these approaches often focus on high-level solutions, with limited attention to optimizing low-level CUDA kernel implementations. Additionally, existing kernel generation benchmarks suffer from exploitable loopholes and insufficient diversity in testing conditions, hindering true generalization assessment. To address these limitations, we introduce robust-kbench, a new benchmark for rigorous evaluation of kernel performance and correctness across varied scenarios. Furthermore, we present a comprehensive agentic framework that automates CUDA kernel discovery, verification, and optimization. This pipeline enables frontier LLMs to translate torch code to CUDA kernels and iteratively improve their runtime within our robust evaluation setting. Our sequential workflow first translates PyTorch code into equivalent CUDA kernels. It then optimizes their runtime using a novel evolutionary meta-generation procedure tailored to the CUDA ecosystem, guided by LLM-based verifiers for correctness and efficient filtering. Evaluated on robust-kbench, our approach produces CUDA kernels outperforming torch implementations for practical applications, including forward and backward passes. It can fuse operations and deploy various runtime optimization strategies. The verifier workflow accurately classifies incorrect kernels, enhancing hardware verification efficiency.
