网易首页 > 网易号 > 正文 申请入驻

还在手写CUDA内核?CODA来了!LLM和新手也能让Transformer跑出光速

0
分享至



机器之心编辑部

5 月 22 日,Tri Dao 在社交媒体上转发了 Han Guo 的一条推文。他还写道:「经过一些数学重写,结果发现 Transformer 的所有内容都是一系列 GEMM + epilogue(矩阵乘法加尾声)。给定一些优化的原语,LLM(以及新手)就可以为所有 Transformer 操作编写光速内核!」



Tri Dao 是 FlashAttention 系列的核心作者之一,而这条推文则指向了他们当天发布的一篇论文:CODA



  • 论文标题:CODA: Rewriting Transformer Blocks as GEMM-Epilogue Programs
  • 论文地址:https://arxiv.org/abs/2605.19269
  • 代码地址:https://github.com/HanGuo97/coda-kernels

这个名字,读起来像「终曲」,念起来像「CUDA」。来自 MIT、普林斯顿、Together AI 和 Meta 的研究者,试图用一套新的编程抽象,把 Transformer 训练里那些鲜少被人关注、却持续消耗时间的「散碎计算」,系统性地消化掉。

背景:训练大模型的「偷懒税」

要理解 CODA 在解决什么问题,先要明白大模型训练的时间都去哪了。

在一块英伟达 H100 上训练一个 LLaMA-3 风格的 1B 参数模型,大部分人会直觉地认为:时间都花在矩阵乘法和注意力计算上,毕竟那才是「真正的计算」。这个直觉大体上没错:矩阵乘法(GEMM)和注意力确实占据了主要算力



但如果你打开性能分析器仔细看,会发现还有一批「小算子」在安静地消耗着时间:归一化(RMSNorm)、激活函数(SwiGLU、RoPE)、残差加法、跨层规约……它们单个计算量不大,却频繁地把大型中间张量从显存里搬进搬出。



这就是所谓的「内存带宽瓶颈」:好比一个厨艺绝顶的厨师,但每做一道菜都要把食材从远处的仓库搬来、用完再送回去,而不是放在手边的台面上。厨师的手速再快,等待搬运的时间也是真实的浪费。

更糟糕的是,随着英伟达的 FP8、FP4 等低精度格式让矩阵计算越来越快,这些「搬运」操作的相对成本反而在上升:矩阵乘法加速了,但张量搬进搬出的成本并没有同比缩短。

论文中有一组数据很直观:在 H100 上用 TorchTitan 训练 1B 参数模型时,非矩阵乘法操作占据了相当一部分的端到端运行时间,且随着 FP8 精度的引入,这一比例还会进一步凸显。

现有的编程框架对此几乎无能为力。PyTorch 把 Transformer 的计算表达成一串算子序列,算子之间有清晰的边界。这种边界对于自动微分(autograd)非常友好,却恰好阻止了跨算子的融合优化:每一个算子边界,往往就是一次不必要的显存写回。

CODA:「尾声」里藏着宝藏

CODA 的出发点是一个朴素的观察。

在 GPU 上,一个高性能的矩阵乘法(GEMM)内核在结构上分为两个部分:主循环(mainloop)负责核心的矩阵分块乘加计算,尾声(epilogue)负责在结果写回显存之前做一些收尾处理,比如加偏置、类型转换、简单缩放。



尾声存在的意义,在于此时矩阵乘法的输出还「活在」片上寄存器里,还没有落地到全局显存。这是一个短暂的黄金窗口:如果能在这个时刻多做一些计算,就可以完全省掉一次显存写入再读出的往返。

CODA 的核心洞察是:Transformer 里那些内存密集型操作,其实很多可以被代数地重新参数化,塞进这个「尾声」窗口里执行。

这需要一点数学技巧。以最常见的 GEMM-RMSNorm-GEMM 模式为例:一个矩阵乘法的结果,经过残差加法、RMS 归一化,然后再做另一个矩阵乘法。传统做法是三个独立算子串行执行,中间结果两次落地显存。



CODA 团队发现,RMS 归一化中的行缩放因子 r,因为是每行共享的标量,它和后面的矩阵乘法满足交换律:可以把 r 的应用从「第二个 GEMM 之前」推迟到「第二个 GEMM 的尾声」。推迟之后,第一个 GEMM 的尾声只需要计算局部的「分块均方根」(partial RMS),由一个极轻量的辅助规约内核合并,而完整的 RMSNorm 计算消失了。

类似的重新参数化,对 SwiGLU、RoPE(旋转位置编码)、交叉熵损失等操作同样适用,甚至对反向传播也成立。论文中有一个定理证明:只要前向尾声是「分块局部」的,反向传播就自动继承相同的结构。具体请访问原论文查看。

五种「积木」和一套「乐高语言」

CODA 不是一个具体的融合内核,而是一套编程抽象。

它固定住经过专家优化的 GEMM 主循环,然后在尾声位置暴露五类可组合的基本原语:

  • 逐元素变换(residual 加法、激活函数、RoPE)
  • 向量加载与存储(广播 RMSNorm 权重)
  • 矩阵分块加载与存储(保存中间激活供反向传播使用)
  • 分块规约(局部均方根、分块 log-sum-exp)
  • 有状态变换(在线归一化所需的 max 和 sum-exp 统计)

用这五类积木,一个标准 Transformer 的前向和反向传播中、除注意力之外的几乎全部操作都可以被覆盖。

更有意思的是这套抽象对「谁来写代码」的宽容度。论文在实验中评估了两种实现模式:一种是人工程序员撰写,另一种是用 Claude Code 来生成 —— 给定 CODA 的原语说明、若干示例和实现日志,由 AI 完成大部分内核代码,人工轻度监督。

两种模式的性能表现均达到了较高水平。Tri Dao 在推文中说「LLM 以及新手就可以编写光速内核」,这正是论文实验结果在现实层面的映射。

实验结果

CODA 的基准测试选择的是较为苛刻的对手:cuBLAS 加上 torch.compile,以及专为 LLM 优化的 Liger Kernel 和 FlashInfer。

论文对每个内核评估了两种实现:CODA (LLM)由 Claude Code 生成,研究者提供原语说明、若干示例和一份持续更新的实现技巧日志,AI 完成主体代码,人工做轻度监督;CODA (Human)由人工程序员独立编写,使用同样的高层重参数化思路,但不依赖 CODA 原语集本身。两组结果都与 cuBLAS + torch.compile、Liger Kernel、FlashInfer 等优化库进行对比。

在单算子层面,以 GEMM-RMSNorm-GEMM 这一典型模式为例,CODA 在对应 1B、7B、70B 三个模型规模的隐藏维度下均实现了对 cuBLAS + PyTorch 基线的超越。SwiGLU、RoPE、交叉熵等尾声组合也有类似表现。

LLM 生成的内核在大多数基准上与人工手写版本不相上下,个别配置下甚至略有超越。这在 GPU 内核优化这个历来门槛极高的领域,是一个颇为罕见的结论。







反向传播的收益尤为突出:GEMM-Residual-PartialRMS-GEMM 的反向内核相比基线加速幅度可达 1.6 至 1.8 倍,SwiGLU 反向也有约 1.4 至 1.6 倍的提升。这个方向上,LLM 与人工实现的差距同样微小。这并不奇怪:反向传播天然涉及更多中间张量的存取,尾声融合的收益就更大;而 CODA 的原语设计足够清晰,使得 AI 模型能够正确地完成组合。



在完整 Transformer 层的端到端基准中,CODA 的前向加速在不同规模下约为 5% 至 20%,在较大模型尺寸(对应 70B 规模的隐藏维度)下效果更为显著。

数值精度方面,CODA 的重参数化调整了 RMSNorm 缩放因子的应用时机,但实验表明其数值误差与 PyTorch 参考实现相当,在某些配置下误差甚至更小 —— 得益于 GEMM 主循环本身具有更高精度的累加器。

CODA 能做什么:一张速查单

在进入更大的视角之前,先把 CODA 的能力边界说清楚。

  • 覆盖范围:标准 Transformer(如 LLaMA 架构)的前向和反向传播中,除注意力和词嵌入之外的几乎全部计算,包括 RMSNorm、残差加法、SwiGLU 激活、RoPE 旋转位置编码、交叉熵损失,以及上述操作的反向梯度计算。
  • 加速效果:在对应 1B 至 70B 规模的隐藏维度下,单算子层面相比 cuBLAS + torch.compile 基线有不同程度的提升,其中反向传播收益最为显著(部分内核可达 1.6 倍以上);完整 Transformer 层的端到端前向加速约为 5% 至 20%,在较大模型尺寸下效果更突出。
  • 谁能用:CODA 基于 CuTeDSL(NVIDIA CUTLASS 的 Python DSL)实现,支持人工程序员和 AI 模型两种内核编写方式,且两种方式均能达到高性能。
  • 当前限制:目前仅支持单 GPU 场景,不涉及分布式训练;重参数化主要针对标准 Transformer 架构,其他架构的适用性有待验证。

结语

CODA 并非孤立的工作。它是一类思想的具体实现:在 GPU 上,真正的优化空间往往不在「算什么」,而在「怎么搬」。

FlashAttention 让注意力计算「住进」了片上内存,CODA 试图让归一化和激活函数也「住进去」。Triton 降低了写自定义内核的门槛,ThunderKittens、TileLang 等进一步在不同层次上探索这一空间。这些工作共同指向同一个方向:把 PyTorch 算子图的表达便利性,与接近手写 CUDA 的执行效率,真正统一在一套可编程的框架里。

Tri Dao 推文的最后一句话值得再回味:「LLM 以及新手就可以为所有 Transformer 操作编写光速内核。」这背后有一个更深的逻辑:当编程抽象设计得足够好,AI 模型本身就可以参与到自身训练基础设施的优化中。这个循环,才是 CODA 最耐人寻味的地方。

从这个角度看,「CODA」这个名字或许另有深意。在古典音乐中,Coda 是乐曲末尾收束全篇的段落。在这里,它是 GEMM 内核的「尾声」—— 而写好这段尾声,或许正是 Transformer 训练系统效率提升的下一个重要章节。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
金球奖前负责人:魔笛接到获奖通知后落泪;本泽马当时很冷淡

金球奖前负责人:魔笛接到获奖通知后落泪;本泽马当时很冷淡

懂球帝
2026-10-07 20:15:41
王楚钦确认告别仅48小时,新身份曝光,原来他早走上了另一条路

王楚钦确认告别仅48小时,新身份曝光,原来他早走上了另一条路

北海史记
2026-10-01 00:40:27
就“东航空姐下跪”,广东一上市公司发声

就“东航空姐下跪”,广东一上市公司发声

吉刻新闻
2026-10-07 21:12:04
为何发达国家,不流行支付宝和微信支付?周小川一句话说透了真相

为何发达国家,不流行支付宝和微信支付?周小川一句话说透了真相

平说财经
2026-10-06 22:39:21
0-2惨败!高芙爆冷出局,无缘中网8强,受场外因素影响,郑钦文夺冠有戏

0-2惨败!高芙爆冷出局,无缘中网8强,受场外因素影响,郑钦文夺冠有戏

体育就你秀
2026-10-07 17:38:47
苏杰生:印度绝非“中等强国”,必须按超级大国标准享受一切权力!

苏杰生:印度绝非“中等强国”,必须按超级大国标准享受一切权力!

王姐懒人家常菜
2026-10-07 17:08:15
在泰国曼谷失联的上海音乐教师已安全回国,我使馆:赴泰中国公民要“对自己和家人负责,切勿因盲目冲动、轻信许诺而令家人亲属担忧牵挂”

在泰国曼谷失联的上海音乐教师已安全回国,我使馆:赴泰中国公民要“对自己和家人负责,切勿因盲目冲动、轻信许诺而令家人亲属担忧牵挂”

都市快报橙柿互动
2026-10-07 16:02:23
大S冥寿50岁生日,具俊晔在墓地失声大哭,S妈捧俩外孙照片合照

大S冥寿50岁生日,具俊晔在墓地失声大哭,S妈捧俩外孙照片合照

青梅侃史啊
2026-10-08 07:06:04
一场2-1,郑钦文创造中国网球历史!闯入中网8强,狂赚130万奖金

一场2-1,郑钦文创造中国网球历史!闯入中网8强,狂赚130万奖金

侃球熊弟
2026-10-07 19:48:44
四川曾有老虎,为什么没吃大熊猫?护林员说:80%的人不知道,老虎就算“饿疯了”,也不会将大熊猫当作美餐

四川曾有老虎,为什么没吃大熊猫?护林员说:80%的人不知道,老虎就算“饿疯了”,也不会将大熊猫当作美餐

回京历史梦
2026-10-04 02:50:05
炮轰C罗竟要求教练念稿把自己比作贝利老马!葡媒怒斥:自我膨胀到极点

炮轰C罗竟要求教练念稿把自己比作贝利老马!葡媒怒斥:自我膨胀到极点

砚底沉香
2026-10-07 18:37:44
美国女囚注射死刑失败,律师:她已清醒,是全美已知唯一完整行刑幸存者,臂上被插七根针

美国女囚注射死刑失败,律师:她已清醒,是全美已知唯一完整行刑幸存者,臂上被插七根针

红星新闻
2026-10-07 16:13:42
西方国家为什么都讨厌中国?俄罗斯专家:中方有两个“原罪”

西方国家为什么都讨厌中国?俄罗斯专家:中方有两个“原罪”

泪满过眼
2026-10-07 10:48:09
工信部派出百人专家团队常驻云南边境,与公安机关并肩作战,仅仅3个月关停木姐地区涉诈手机号码7.5万个,宽带账号4000多个

工信部派出百人专家团队常驻云南边境,与公安机关并肩作战,仅仅3个月关停木姐地区涉诈手机号码7.5万个,宽带账号4000多个

政知新媒体
2026-10-07 10:20:03
国庆77周年招待会,这13位上将亮相!

国庆77周年招待会,这13位上将亮相!

华山穹剑
2026-10-04 20:30:26
多国使领馆拒绝撤离基辅!俄罗斯挑衅升级:在保加利亚经济区击沉商船

多国使领馆拒绝撤离基辅!俄罗斯挑衅升级:在保加利亚经济区击沉商船

鹰眼Defence
2026-10-07 16:11:40
AI画出“史上最难”维恩图!困扰数学家多年的对称之美被攻破

AI画出“史上最难”维恩图!困扰数学家多年的对称之美被攻破

侃故事的阿庆
2026-10-07 04:45:09
沈伯洋在赵少康拷问下原形毕露,沈政男看完专访后坦言:“佯流”

沈伯洋在赵少康拷问下原形毕露,沈政男看完专访后坦言:“佯流”

奇思妙想生活家
2026-10-08 05:49:49
老公执意把阳台改成茶室,我坚决反对,结果我看到效果都服了!

老公执意把阳台改成茶室,我坚决反对,结果我看到效果都服了!

绘本家居
2026-10-07 11:06:44
二十个民间中药方,超级实用,直接收藏!

二十个民间中药方,超级实用,直接收藏!

书法小教程
2026-10-07 06:02:58
2026-10-08 07:36:49
机器之心Pro incentive-icons
机器之心Pro
专业的人工智能媒体
14143文章数 142744关注度
往期回顾 全部

科技要闻

诺贝尔化学奖揭晓,两位科学家摘得大奖

头条要闻

中国新婚夫妇在马尔代夫度假溺亡 有人1天目睹2起溺水

头条要闻

中国新婚夫妇在马尔代夫度假溺亡 有人1天目睹2起溺水

体育要闻

从骑马舞到开口全中文 德约在北京不止七冠

娱乐要闻

蔡康永风波再升级!这次谁也救不了他

财经要闻

谷歌签下科技史上最大核能协议

汽车要闻

智能化再提升 2027款东风标致、东风雪铁龙新车更人性化了

态度原创

健康
教育
亲子
时尚
艺术

刷酸祛痘,为什么有人翻车?

教育要闻

走进上海一年花费30万的私立学校

亲子要闻

赴美生子曾经很流行,5年暴涨过20倍,现在这些孩子怎么样了?

50套高智感通勤穿搭,怎么穿都时髦好看!

艺术要闻

全球十大顶级风光摄影师作品,太美了!

无障碍浏览 进入关怀版