首页
学习
活动
专区
圈层
工具
发布

还在手写CUDA?上交KernelPilot用AI帮你写又快又好的CUDA!

项目主页:http://www.kernelpilot.com

体验地址:http://www.kernelpilot.com/index.php/tool

GitHub:https://github.com/KernelPilot

你有没有过这样的经历?

明明费尽力气写出了一个 CUDA Kernel,逻辑没错,也能编译通过,但一跑起来,慢得像爬 。

而资深工程师调出来的 Kernel,往往只靠几个改动,就可以实现天差地别的效果。

这背后的问题是:CUDA 编程实在是太硬核了。编译通过、逻辑正确只是开始的一小步,性能调优过程才是与硬件斗智斗勇的过程。

但现在,上海交大 KernelPilot 团队带来了一个全新的解决方案:让大模型来写高性能的 CUDA Kernel

他们目前推出的KernelPilot-v1不仅使得 LLM 生成了正确的 CUDA Kernel,还能优化到比人类更快比 TensorRT 更快的水平!

目前,介绍KernelPilot-v1的论文CUDA-LLM也已经在项目主页公开了。

告别手动调优,AI 直接写出高效 CUDA

传统意义上,我们指望 LLM 能写点 Python 脚本就算不错了。至于写 CUDA Kernel ?大多数人觉得“基本不可能”。

毕竟,CUDA 不是普通代码。它需要:

语法正确(能编译)

功能正确(结果对)

性能极致(跑得快)

前两项 LLM 勉强能应付,但第三项——“跑得快”,涉及的是对 GPU 的深层理解。

但 KernelPilot 做到了。他们提出了一套名为Feature Search and Reinforcement (FSR) 的新框架,让 LLM 也能生成出性能更好的 CUDA Kernel。

FSR:让 AI 像人类专家一样“思考+试错+进化”

FSR 的核心思想很简单:别指望 AI 一次写好,而是让它边写、边测、边改像程序员一样迭代优化

整个过程分为三步:生成 验证 强化反馈

第一步,多维特征验证,层层把关

FSR 不像普通代码生成那样“写完就完”,而是引入了三个关键“质检员”:

编译验证器(Compilation Verifier):检查代码能否成功编译。如果有语法错误,直接返回报错信息,告诉 AI “你哪里写错了”。

🧪功能验证器(Function Validator):把 AI 生成的 kernel 跑起来,对比输出是否和标准答案一致。哪怕差一点点,也算错。

⏱️性能剖析器(Performance Profiler):在真实 GPU 上测量执行时间,记录延迟、带宽、利用率等指标,告诉 AI:“你这个版本比上一个慢了 20%”。

这三个模块构成了一个闭环反馈系统,确保 AI 生成的代码不仅“看起来对”,而且“真的对”、“跑得快”

第二步,强化反馈,AI 学会“为什么快”

最厉害的地方来了:当 AI 写出一个更快的 kernel 时,系统不会止步于“哦,这个快”,而是会把性能信息整合,让 AI 继续探索可能优化的方向

举个例子 :

在 矩阵转置(Matrix Transpose) 任务中,人类写的 baseline kernel 每元素做一次分散读写,导致内存未合并,带宽利用率极低。

而 KernelPilot-v1 生成的版本,自动采用了分块(tiling)+共享内存+循环展开的技术,将 DRAM 带宽打满,最终实现104 倍加速!

更惊人的是,这个优化不是预设的,而是 AI 在多次尝试后“自己发现”的。系统通过性能反馈不断强化这种模式,让 AI 逐渐“学会”什么是高效的 CUDA 写法。

第三步,流式搜索,越练越强

FSR 采用“多轮搜索”策略:

初始 prompt 输入任务描述、host code、GPU 型号等信息;

LLM 生成 N 个候选 kernel;

全部送入三重验证;

如果没有一个通过,就把错误信息反馈回去,让 AI 重写;

如果有多个通过,选出最快的那个,用它的代码和性能数据构造新的 prompt,继续优化。

这个过程就像 AI 在“刷题”:每次失败都积累经验,每次成功都总结模式,最终进化出远超人类平均水平的代码能力。

FSR 不仅能生成代码,还能提炼出通用的优化策略,比如:

“使用warp shuffle减少同步”

“分块大小设为32×32以匹配warp粒度”

“启用#pragma unroll提升指令级并行”

这些知识可以迁移到其他任务中,形成“AI专家经验库”。

实测结果:最高提速 179 倍!

研究团队在 20 个典型 CUDA 任务 上测试了 KernelPilot-v1,涵盖AI 核心算子(如 LayerNorm、Attention)、科学计算(Monte Carlo 积分)、基础算法(排序、归约)等。

测试平台包括:

GTX 1660 SUPER(Turing 架构,边缘端)

RTX 3090 Ti(Ampere 架构,服务器级)

在多个任务中,AI 生成的 CUDA kernel 甚至超过了手写优化版本,达到了接近硬件极限的性能。

而且,所有任务的功能正确率达到了 100%—— 没有一个出错!

相比之下,直接让 LLM 生成 CUDA 代码(无 FSR),在多个任务上连编译都通不过,或结果错误

不仅如此,研究团队还将 KernelPilot-v1 拿到“硬核考场”,与 TensorRT 正面对决

结果令人震惊: 在51个任务、255个测试用例的全面较量中,KernelPilot-v1 实现了高达98.4% 的压倒性胜率——这意味着,在255个测例中的251个,KernelPilot-v1 生成的 kernel 完胜 TensorRT 结果,跑得更快、效率更高。

总结

KernelPilot 的意义,远不止于“自动生成 CUDA 代码”。

快来立即体验,见证 AI 写 CUDA 的奇迹。如果你是 GPU 开发者、高性能计算工程师、AI 框架研究员,那么KernelPilot 绝对值得你亲自一试

项目主页:KernelPilot[1]

文档链接:KernelPilot-文档[3]

论文链接:CUDA-LLM (arxiv)[4]

GitHub:KernelPilot[5]

参考资料

[1]

KernelPilot:http://www.kernelpilot.com

[2]

KernelPilot-V1:http://www.kernelpilot.com/index.php/tool

[3]

KernelPilot-文档:http://www.kernelpilot.com/index.php/documents/

[4]

CUDA-LLM (arxiv):https://arxiv.org/abs/2506.09092

[5]

KernelPilot:https://github.com/KernelPilot

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OoqefVQk0J2BVFqBj8hqu3Vg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。
领券