KernelGenBench
收藏资源简介:
KernelGenBench是一个包含210个操作符的完整数据集,涵盖ATen、vLLM和cuBLAS三个来源,用于评估跨多个硬件平台的LLM和基于代理的Triton内核生成。
KernelGenBench is a comprehensive dataset comprising 210 operators sourced from three frameworks: ATen, vLLM, and cuBLAS. It is designed to evaluate LLM and agent-based Triton kernel generation across multiple hardware platforms.
数据集概述
KernelGenBench 是一个基准测试框架,用于评估基于大语言模型(LLM)和智能体(Agent)的 Triton 内核生成能力,支持多种硬件平台。
核心特性
- 210 个算子:涵盖 ATen(110 个)、vLLM(50 个)和 cuBLAS(50 个)三个来源。
- 多芯片支持:兼容 NVIDIA、Ascend NPU、MUSA、Hygon DCU、Iluvatar 以及 MetaX 等硬件。
- 两种评估轨道:
- LLM 轨道:使用 Pass@K 指标评估 LLM 生成 Triton 内核的能力。
- Agent 轨道:评估编码智能体通过迭代生成、验证和修复内核的能力。
- 多种智能体方法:包括 Claude Code、OpenCode、AutoKernel、AKO4ALL、cuda-optimized-skill 等。
- 自动验证:基于容差比较的精度测试。
数据集划分
| 数据集 | 算子数量 | 描述 |
|---|---|---|
KernelGenBench |
210 | 完整数据集 (ATen + vLLM + cuBLAS) |
KernelGenBench-aten |
110 | 仅 ATen 算子 |
KernelGenBench-vllm |
50 | 仅 vLLM 算子 |
KernelGenBench-cublas |
50 | 仅 cuBLAS 算子 (仅限 NVIDIA) |
在非 NVIDIA 芯片上,默认数据集自动切换为 KernelGenBench-aten(cuBLAS 算子依赖 NVIDIA GPU)。
评估结果示例
多来源评估(NVIDIA A100,210 个算子)
- Claude Code 方法在总体精度上达到 87%,总体加速比为 0.78。
- AKO4all 方法在总体精度上达到 83%,总体加速比为 0.97。
多芯片评估(110 个 ATen 算子,6 个平台)
- 在 NVIDIA 平台上,Claude Code 方法的精度为 92%,加速比为 0.86。
- 在平台 A 上,Claude Code 方法的精度为 89%,加速比为 0.18。
使用方法
LLM 轨道
通过 scripts/generate_kernel_and_verify.py 脚本评估 LLM,支持单算子测试和全数据集基准测试。
支持配置模型名称、采样轮次、温度、超时时间等参数。
Agent 轨道
通过 agent_bench/ 目录下的脚本评估编码智能体,支持单算子、多算子和全数据集基准测试。
支持配置智能体方法、数据集、设备数量、超时时间等参数。
项目结构
agent_bench/:Agent 轨道框架,包含智能体方法、提示词模板和验证工具。sota_agents/:专门的智能内核生成智能体(AutoKernel、AKO4ALL、cuda-optimized-skill)。src/kernelgenbench/:核心包,包含精度测试、数据集和框架。src/generator/:LLM 提示词构建器和采样器。src/sandbox/:内核验证器和反黑客机制。src/runtime/:设备检测和约束。scripts/:LLM 轨道入口点和分析工具。
贡献与引用
欢迎贡献新的算子、芯片后端、智能体或方法。详细信息请参阅项目的 CONTRIBUTING 文档。
若在研究中使用了 KernelGenBench,请引用:
@software{kernelgenbench2026, title={KernelGenBench: A Benchmark for LLM and Agent-Based Triton Kernel Generation}, author={KernelGen Team}, url={https://github.com/flagos-ai/KernelGenBench}, year={2026} }
该项目采用 MIT 许可证。




