新智元报道
编辑:英智
【新智元导读】Meta推出KernelLLM,这个基于Llama 3.1微调的8B模子,竟能将PyTorch代码自动转换为高效Triton GPU内核。实测数据显示,它的单次推理性能逾越GPT-4o和DeepSeek V3,多次天生时得分飙升。
在AI领域,参数规模曾被视为「性能天花板」。
Meta最新宣布的KernelLLM,却用8B参数的「小身板」,在GPU内核天生使命中把200B的GPT-4o按在地上摩擦。
这是一个基于Llama 3.1 Instruct举行微调的8B参数模子,旨在将PyTorch?樽远晃咝У腡riton GPU内核。
KernelLLM简直是GPU内核开发神器,用更少的参数实现了更强的性能,且简朴易用。
它只有8B参数,可是在KernelBench-Triton Level 1,单次推理性能凌驾了GPT-4o和DeepSeek V3。
通过多次推理,KernelLLM性能优于DeepSeek R1。
这一切都来自一个参数规模比竞争敌手小两个数目级的模子。
@Denis Kanonik吐槽「这又是用测试集训练的吗?」
KernelLLM让内核开发更易上手
KernelLLM是一款基于Llama 3.1 Instruct的8B模子,专门针对用Triton编写GPU内核的使命举行了训练。
它能让GPU编程变得更简朴,实现高性能GPU内核天生的自动化。
KernelLLM通过自动化天生高效的Triton实现,知足对高性能GPU内核日益增添的需求。
随着事情负载的增大和加速器架构的多样化,对定制化内核解决计划的需求显著增添。
现在市面上许多相关工具,要么只能在测试的时间优化,要么就只盯着KernelBench的问题调优,很难应对更普遍的场景。
KernelLLM是首个在外部(PyTorch,Triton)代码对数据上举行微调的LLM。
Triton内核天生事情流程
把PyTorch代码输进去,KernelLLM就会天生Triton内核候选代码。
然后用单位测试来验证这些代码,用随机输入跑一跑,看看输出对差池。要是天生好几个候选代码,还能比比哪个最好,挑出最优的。
KernelLLM的Triton内核天生流程:用KernelLLM把PyTorch代码翻译成Triton内核的候选代码。天生的代码会通过单位测试验证,测试用已知形状的随机输入数据运行内核。这个流程支持天生多个候选代码(通过 pass@k评估),增添候选数目来提高质量,最后选出最好的Triton内核实现作为输出(绿色部分)
为了训练这个模子,团队可是下了大功夫,用了25000多对(PyTorch,Triton)代码示例,尚有合成的样本。
这些数据一部分来自TheStack的过滤代码,一部分是通过torch.compile () 和提醒手艺天生的。
数据集KernelBook,参考链接:https://huggingface.co/datasets/GPUMODE/KernelBook。
训练时用的是Llama3.1-8B-Instruct模子,在自界说数据集上做了监视微调(SFT),测试它在KernelBench-Triton上天生准确Triton内核及挪用代码的能力。
KernelBench-Triton是基于KernelBench[Ouyang et al. 2025]开发的变体,专注Triton内核天生。
训练和评估时,PyTorch代码会设置一个包括名堂示例的提醒模板作为指令。
模子训练了10个epoch,批巨细为32,接纳标准SFT要领,超参数凭证验证集的疑心度(perplexity)来选择。
训练用了16个GPU,共耗时12小时(192 GPU小时),报告了最佳检查点的验证效果。
性能评估
只管模子规模较小,但其性能可与最先进的LLM相媲美。
KernelBench-Triton测试中,8B参数的KernelLLM,单次推理得分20.2,比671B参数的DeepSeek V3(16分)和200B参数的GPT-4o(15分)都高。
要是多天生几个候选代码,得分还能蹭蹭往上涨,天生10个的时间能到51.8分,20个的时间能到57.1分。
KernelLLM推理用temperature=1.0和top_p=0.97运行。
在KernelBench上测试了模子,这是一个开源基准测试,用于评估LLM编写的高效GPU内核的能力。
它包括250个全心挑选的PyTorch?,按负载调解,从简朴的单操作(如Conv2D或Swish,Level 1)到完整的模子架构(Level 3)。
它在差别难度的使命里体现都很稳,不管是简朴的单个操作符,照旧重大的模子架构,都能应对。
测试会同时降低代码的准确性(通过与参考PyTorch输出比照)和性能(通过与基准实现的加速比)。
团队开发了一个新的KernelBench-Triton变体,专门评估LLM天生Triton内核的能力,很是适合测试KernelLLM。
所有测试都在NVIDIA H100 GPU上完成。
KernelLLM在pass@k中体现出近似对数线性的扩展行为
KernelLLM怎么用?
先装几个依赖包:
用的时间,先导入库,挪用generate_triton函数,就能天生优化后的Triton代码啦。
KernelLLM提供了一个简朴的接口,用于从PyTorch代码天生Triton核。
要是不想写剧本,还能直接运行python kernelllm.py,使用内置的REPL接口,翻开交互式界面,实时看效果。
kernelllm.py提供了多种与模子交互的要领。
KernelLLM提供了几种自界说天生历程的要领:
有时它会犯点小过失,好比API引用差池、语法蜕化,有时间还不太能按指令天心理想的内核。
天生的代码结构有点像编译器自动吐出来的,有时在变量命名、张量形状、类型处置惩罚和数值精度这些细节上也容易出问题。
参考资料:
https://x.com/reach_vb/status/1924478755898085552
https://huggingface.co/facebook/KernelLLM
成年裸J照无遮挡🔞视频 | 5天前 |
同人裸体被❌漫画 |
100元3小时上门服务电话号码 | 6天前 |
揉⋯啊⋯嗯~出水了震动电视剧 |
国产性猛交XX乱放冰块的 | 6天前 |
成人把🐤戳进去的视频 |
FreePorno💋👙59 | 3天前 |
唐三的坤坤放在宁荣荣哪里 |
陆雪琪3D无码动漫免费看 | 1天前 |
自慰时看的小黄说 |
小舞劈开腿被❌高潮游戏 | 8天前 |
jiZZ成熟丰满女人少妇直播 |
流萤被❌出白浆 | 1天前 |
千仞雪裸体被❌羞羞网站 |
3D Animal Hentai Cartoon | 5天前 |
小处雏一区二区三区精品视频 |
黄鳝钻进了币币 | 5天前 |
男男伦流澡∽tm别舔了 |
国产乱人妻精品秘入口 | 5天前 |
美女被❌❌❌❌❌ |