[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"news-detail:ZX20250601_13244977":3},{"code":4,"data":5},0,{"unicode":6,"title":7,"categoryId":8,"categoryName":9,"industryId":10,"industryName":11,"origin":12,"originAuthor":13,"originRemark":14,"originUrl":15,"pic":16,"content":17,"numRead":18,"numLike":4,"createTime":19,"hadFav":4,"hadLike":4,"status":4,"memberUnicode":20,"companyLogo":21,"companyName":22,"corporateVideoUrl":13,"collected":4,"corporate3dCover":23,"corporate3dUrl":23,"corporate3dId":23,"companyUnicode":24,"focusFlag":25,"exhibitionMainInfoVO":23},"ZX20250601_13244977","斯坦福意外用AI生成超强CUDA内核，性能比人类专家优化得还要好！翻倍碾压原生PyTorch，华人主创","1242381412612444162","行业动态","1245513623956107264","其它行业",1,"","http:\u002F\u002Ftech.ifeng.com\u002F","https:\u002F\u002Ftech.ifeng.com\u002Fc\u002F8jnlz0REtNl","https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002FA8F0B79043F413E1C192F34B240EAF51F05B8F3B_size111_w1080_h607.png","\u003Cdiv class=\"index_articleBox_6mBbT\" style=\"height:auto\">\n \u003Cdiv class=\"index_text_D0U1y\">\n  \u003Cp>好家伙，AI意外生成的内核（kernel），性能比人类专家专门优化过的还要好！\u003C\u002Fp>\n  \u003Cp>斯坦福最近披露了一组新发现，结果真的太亮眼了。\u003C\u002Fp>\n  \u003Cp>由AI优化的内核，在常见深度学习操作上，翻倍超越原生PyTorch，性能至多可以提升近400%——\u003C\u002Fp>\n  \u003Cp>\u003Cstrong>矩阵乘法（Matmul，FP32）\u003C\u002Fstrong>：性能达到PyTorch torch.matmul的101.3%。\u003C\u002Fp>\n  \u003Cp>\u003Cstrong>二维卷积（Conv2D）\u003C\u002Fstrong>：性能达到 torch.nn.Conv2D的179.9%。\u003C\u002Fp>\n  \u003Cp>\u003Cstrong>Softmax\u003C\u002Fstrong>：性能达到 torch.softmax的111.8%。\u003C\u002Fp>\n  \u003Cp>层归一化（LayerNorm）：性能达到torch.nn.LayerNorm的484.4%。\u003C\u002Fp>\n  \u003Cp>Conv2D+ReLU+MaxPool组合操作：性能达到PyTorch参考实现的290.1%，以及torch.compile()参考实现的189.0%。\u003C\u002Fp>\n  \u003Cp>（在NVIDIA L40S GPU上进行基准测试，性能百分比定义为参考时间除以生成的kernel_size时间）\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002FA8F0B79043F413E1C192F34B240EAF51F05B8F3B_size111_w1080_h607.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 359px;\">\u003C\u002Fp>\n  \u003Cp>更惊人的是，这一切都是\u003Cstrong>意外实现\u003C\u002Fstrong>的。\u003C\u002Fp>\n  \u003Cp>研究团队本来的目标是生成合成数据以训练内核生成模型。\u003C\u002Fp>\n  \u003Cp>结果发现，仅在测试阶段生成的合成数据本身，竟然可以生成性能非常优秀的内核。\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002FBC5ABDBD44739A6A206A547760122FFF3EF196A7_size153_w1080_h331.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 196px;\">\u003C\u002Fp>\n  \u003Cp>围观网友：没想到AI也要取代内核工程师了。\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002F87423D92D7E9F17837D88E25631161F1534CDEEB_size552_w1080_h955.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 565px;\">\u003C\u002Fp>\n  \u003Cp>还有人发现，除了性能大幅提升外，研究团队采用的方法也非常有趣：\u003C\u002Fp>\n  \u003Cp>他们没有简单的在操作上逐步优化（类似于爬坡算法），而是在每次迭代之间加入了一个\u003Cstrong>语言推理\u003C\u002Fstrong>的步骤，通过这种方式鼓励搜索过程更加多样化。\u003C\u002Fp>\n  \u003Cp>也就是说，他们是让系统在每次改进时通过\u003Cstrong>类似“思考”的方式产生更多想法\u003C\u002Fstrong>，从而找到更好的解决方案。\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002F7D0CF665944CF04BD314A84A44C66DE2CBB7AA39_size65_w710_h250.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 225px;\">\u003C\u002Fp>\n  \u003Cp>具体如何实现，一起来看。\u003C\u002Fp>\n  \u003Cp>改代码前先生成自然语言优化思想\u003C\u002Fp>\n  \u003Cp>按照斯坦福团队博客的描述，这种内核生成的思路非常简单——给定torch代码，然后告诉都能写编写自定义内核来替换torch算子。\u003C\u002Fp>\n  \u003Cp>这些内核是用纯CUDA-C编写，无需使用CUTLASS和Triton等库和DSL（Domain-Specific Language，领域专用语言）。\u003C\u002Fp>\n  \u003Cp>不同于传统方法的是，模型并不是一上来就直接改代码，而是先用自然语言生成优化思想，然后再将这些思想转化为新的代码变体。\u003C\u002Fp>\n  \u003Cp>团队这样做的理由是，“按顺序修改”式的优化思路缺乏多样性，导致陷入局部极小值，重复访问同一类转换或无休止地优化没有前景的轨迹。\u003C\u002Fp>\n  \u003Cp>为了进一步增强思路多样性，斯坦福团队还使用了多分支的探索模式。\u003C\u002Fp>\n  \u003Cp>具体来说，他们的方法并非每一步都只优化一个候选方案，而是将每个想法分散开来，使其衍生出多个实现，并使用性能最高的内核作为下一轮的种子。\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002F7158E88A93196125E52C95298114605DDECE917E_size142_w1080_h506.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 299px;\">\u003C\u002Fp>\n  \u003Cp>团队使用OpenAI o3和Gemini 2.5 Pro挑战KernelBench 1级中的10个问题，运行多轮后，最佳内核开始出现。\u003C\u002Fp>\n  \u003Cp>其中大多数最佳结果出现在后续轮次（总共5轮），并且主要是第4轮或第5轮。\u003C\u002Fp>\n  \u003Cp>KernelBench是斯坦福团队自己提出的一套AI生成内核测试基准，基准中的任务分为3个级别，其中1级是指单一原始操作（Single primitive operation），包括AI的基础构建块（例如卷积、矩阵-向量与矩阵-矩阵乘法、损失函数、激活函数以及层归一化）。\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002FB097AEF4F31ED7FA9C5BBB5E0FF8314E2026A6A2_size40_w1080_h687.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 407px;\">\u003C\u002Fp>\n  \u003Cp>这一发现再加上之前DeepMind的AplhaEvolve，以及o3发现Linux的0day漏洞等一系列事件，让网友们认为Gemini 2.5Pro和o3的能力水平已经达到了新的层级。\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002FD96CF338518C230828613D27E6376124FD87FF4F_size140_w1080_h250.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 148px;\">\u003C\u002Fp>\n  \u003Cp>回到斯坦福的项目，在生成过程当中，可以看到模型的生成思路开始显现出与人类的经验相似之处——\u003C\u002Fp>\n  \u003Cp>内存访问优化： 提高不同内存层次结构（全局内存、共享内存、寄存器）之间数据移动的效率，并确保以最大化带宽和最小化冲突的方式访问数据；\u003C\u002Fp>\n  \u003Cp>异步操作和延迟隐藏： 通过将慢速操作（如全局内存访问）与计算或其他内存传输重叠，“隐藏”慢速操作的延迟；\u003C\u002Fp>\n  \u003Cp>数据类型和精度优化： 尽可能使用低精度数据类型（如 FP16 或 BF16）以减少内存带宽要求、提高缓存效率；\u003C\u002Fp>\n  \u003Cp>计算和指令优化：提高算术计算本身的效率，减少指令数量，或利用专门的硬件指令；\u003C\u002Fp>\n  \u003Cp>并行性和占用率增强：最大化流多处理器（SM）上的活动线程数量，以更好地隐藏延迟并提高整体吞吐量；\u003C\u002Fp>\n  \u003Cp>控制流和循环优化：减少与循环、分支和索引计算相关的开销。\u003C\u002Fp>\n  \u003Cp>并且斯坦福团队还展示了一组具体的优化轨迹，从中可以看出，并不是每一步优化都一定能让速度更快，但经过多个步骤的组合，内核的速度能够得到大幅提升，并最终超越PyTorch。\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002FD1BC3335665C8B0B8A1BF453BA05A4A3E457B155_size156_w1080_h709.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 420px;\">\u003C\u002Fp>\n  \u003Cp>在具体实现上，有人询问AI生成CUDA内核时的优化建议，是否可以被转化为对应代码实现、还是说只是触发了随机探索？\u003C\u002Fp>\n  \u003Cp>作者回应说，尽管还没有进行更严谨的系统验证，但是手动检查的案例中，生成的CUDA视线与提出的优化建议是大致匹配的。\u003C\u002Fp>\n  \u003Cp>即AI并不是在完全随机做优化，而是确实在尝试实现它自己提出的策略。\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002FF61F3CA900AE4B5A7583423AC2492996F4522E07_size196_w1080_h445.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 263px;\">\u003C\u002Fp>\n  \u003Cp>华人主创团队意外发现\u003C\u002Fp>\n  \u003Cp>这项研究共有三位作者：Anne Ouyang、Azalia Mirhoseini和Percy Liang。\u003C\u002Fp>\n  \u003Cp>Ouyang目前是斯坦福大学扩展智能实验室的博士生，她本硕毕业于麻省理工，曾在英伟达cuDNN团队工作。\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002F3D4F6393EE9038F45DE597A6E7DF17717CE48202_size324_w1080_h523.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 309px;\">\u003C\u002Fp>\n  \u003Cp>Percy Liang是斯坦福大学计算机科学副教授兼统计学助理教授，目前担任斯坦福基础模型研究中心主任。\u003C\u002Fp>\n  \u003Cp>曾和李飞飞一起发布、推进了多项研究工作。\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002FB2C7B341725DF3972613B5A387C5EC82D3622E1D_size187_w1080_h362.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 214px;\">\u003C\u002Fp>\n  \u003Cp>Azalia Mirhoseini是斯坦福大学计算机科学助理教授、斯坦福扩展实验室创始人。她曾在DeepMind、Google Brain以及Anthropic工作过。\u003C\u002Fp>\n  \u003Cp>她此前参与的研究包括MoE、芯片设计算法AlphaChip等。\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002F93367B66D2ADCE968FBEAFCD854D40C6EBE6BA5D_size899_w1080_h895.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 530px;\">\u003C\u002Fp>\n  \u003Cp>本次研究，本来是希望生成数据来训练内核生成模型。\u003C\u002Fp>\n  \u003Cp>但是在过程中却出现了意想不到的结果，仅在测试阶段生成的合成数据本身，竟然可以生成性能非常优秀的内核。\u003C\u002Fp>\n  \u003Cp>因为这些内核利用了此前被认为\u003Cstrong>很难实现\u003C\u002Fstrong>的高级优化和硬件特性，所以团队决定以博客形式分享此次成果。\u003C\u002Fp>\n  \u003Cp>不过具体是如何生成数据的，研究团队暂时不对外发布，只是提到了这种\u003Cstrong>设计理念也很简单\u003C\u002Fstrong>。\u003C\u002Fp>\n  \u003Cp>最关键的还是，它已经展示出了巨大潜力。\u003C\u002Fp>\n  \u003Cp>此外，研究团队也认为此次发现也与最近的一些趋势相呼应——大规模再训练已不是必需。\u003C\u002Fp>\n  \u003Cp>有时，聪明的搜索和分支策略，可以解锁科学创新并解决复杂问题，通过verifier进行广泛搜索还能有更多收获。\u003C\u002Fp>\n  \u003Cp>将强大推理能力与同时探索多个假设结合起来，能带来更好结果。就像AlphaEvolve、AlphaEvolution、 Gemini 2.5 Pro深度思考一样。\u003C\u002Fp>\n  \u003Cp>最后，团队表示这项研究还有很多可优化的空间。比如他们手头上就还在优化两个维度：\u003C\u002Fp>\n  \u003Cp>FP16 Matmul：52% performance of torch.matmul\u003C\u002Fp>\n  \u003Cp>FP16 Flash Attention:：9% performance of torch.nn.functional.scaled_dot_product_attention\u003C\u002Fp>\n  \u003Cp>与FP16或BF16相比，FP32在新推出硬件上的优化程度通常比较低，这也是为何使用FP32内核比PyTorch更容易实现性能提升。\u003C\u002Fp>\n  \u003Cp>他们表示，虽然现在还有不少限制，但是对于未来前景还是很乐观的。\u003C\u002Fp>\n  \u003Cp>毕竟最开始，他们连能正常运行的内核都生成不了，但是通过不断优化搜索方法，已经能让flash attention的性能提升到了一个不错的水平。\u003C\u002Fp>\n  \u003Cp>值得一提的是，搜索使用的资源也很少，大概只用了300万token输入和400万token输出。\u003C\u002Fp>\n  \u003Cp>One More Thing\u003C\u002Fp>\n  \u003Cp>实际上，不只是一个团队在尝试开发内核大模型。\u003C\u002Fp>\n  \u003Cp>就在5月，开发了Devin的Cognition开源了首个通过强化学习即可编写CUDA内核的大模型Kevin-32B。\u003C\u002Fp>\n  \u003Cp>它基于QwQ-32B在KernelBench数据集上使用GRPO，实现了多轮强化学习，性能优于o3、o4-mini。\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">\u003Cimg class=\"empty_bg\" src=\"https:\u002F\u002Fx0.ifengimg.com\u002Fres\u002F2025\u002F7AC1949CAD980A1FDDC9D9EE269B6659AE325608_size103_w1080_h876.png\" src=\"data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXy8vJkA4prAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==\" style=\" width: 640px; height: 519px;\">\u003C\u002Fp>\n  \u003Cp>参考链接：\u003C\u002Fp>\n  \u003Cp>[1]https:\u002F\u002Fcrfm.stanford.edu\u002F2025\u002F05\u002F28\u002Ffast-kernels.html\u003C\u002Fp>\n  \u003Cp>[2]https:\u002F\u002Fx.com\u002Fanneouyang\u002Fstatus\u002F1928124885567467768\u003C\u002Fp>\n  \u003Cp>[3]https:\u002F\u002Fx.com\u002Fcognition_labs\u002Fstatus\u002F1919835720493236295\u003C\u002Fp>\n  \u003Cp class=\"textAlignCenter\">— \u003Cstrong>完\u003C\u002Fstrong> —\u003C\u002Fp>\n \u003C\u002Fdiv>\n \u003Cspan>\u003C\u002Fspan>\n \u003Cdiv class=\"index_end_1O-ki\">\u003C\u002Fdiv>\n\u003C\u002Fdiv>",114,"2025-12-09 10:37:31","3620375967","https:\u002F\u002Foss-images6396289.yzdli.com\u002F3620375967\u002F1ftirt8q0e\u002F20200602111616.png","广州立佳信科技有限责任公司",null,"ci67fdmkbnogt",-2]