登录
首页 >  科技周边 >  人工智能

DeepSeek R1不编程就能生成GPU内核,比熟练工程师好,惊到了英伟达

时间:2025-02-16 08:13:13 218浏览 收藏

哈喽!大家好,很高兴又见面了,我是golang学习网的一名作者,今天由我给大家带来一篇《DeepSeek R1不编程就能生成GPU内核,比熟练工程师好,惊到了英伟达》,本文主要会讲到等等知识点,希望大家一起学习进步,也欢迎大家关注、点赞、收藏、转发! 下面就一起来看看吧!

英伟达利用DeepSeek-R1自动生成优化GPU内核,引发AI社区热议。这项研究利用推理时扩展技术,让DeepSeek-R1模型在推理过程中分配额外计算资源,自动生成数值正确且针对不同注意力变体的优化GPU注意力内核,无需任何显式编程。

图片

部分评论认为此举可能“自拆护城河”,也有人担忧工作岗位被AI取代。

图片图片

随着AI大模型规模扩大和能力提升,测试时扩展(TTS)或推理时扩展(ITS)技术日益重要。该技术通过在推理过程中增加计算资源,评估多种结果并选择最佳方案,从而提升模型性能。 这使得AI初步具备了类似人类分析复杂问题的能力,能够逐步解决问题并得出最终答案。

英伟达的实验中,DeepSeek-R1模型通过推理时扩展技术,解决了自动生成优化GPU注意力内核的难题。在某些情况下,其生成的结果甚至超越了经验丰富的工程师。

优化注意力内核的需求与挑战

注意力机制是LLM的关键,但其计算复杂度与输入序列长度的平方成正比。因此,需要优化GPU内核以提高效率并避免错误。 此外,注意力机制有多种变体,工程师需要针对特定任务组合使用这些变体。多模态模型则带来了更多挑战,例如需要专门的注意力机制来处理时空信息。

图片

即使对于经验丰富的工程师,创建优化GPU内核也需要大量时间和技能。虽然DeepSeek-R1等大模型在代码生成方面潜力巨大,但其初始尝试效果并不理想,因此需要在推理时采用其他策略。

示例Prompt如下:

Please write a GPU attention kernel to support relative position encodings. Implement the relative positional encoding on the fly within the kernel. The complete code should be returned, including the necessary modifications.

Use the following function to compute the relative positional encoding:

def relative_positional(score, b, h, q_idx, kv_idx):

     return score + (q_idx - kv_idx)

When implementing the kernel, keep in mind that a constant scaling factor 1.44269504 should be applied to the relative positional encoding due to qk_scale = sm_scale * 1.44269504. The PyTorch reference does not need to scale the relative positional encoding, but in the GPU kernel, use:

qk = qk * qk_scale + rel_pos * 1.44269504

Please provide the complete updated kernel code that incorporates these changes, ensuring that the relative positional encoding is applied efficiently within the kernel operations.

大模型有时会产生错误或低效的代码。计算最佳GPU线程映射也极具挑战性。

推理时扩展生成优化GPU内核

英伟达工程师创建了一个新的工作流程,包括一个验证器和一个闭环推理的DeepSeek-R1模型。

图片

该流程首先由手动提示初始化,DeepSeek-R1生成GPU代码,验证器进行分析并生成新的提示,如此循环迭代。 英伟达发现,15分钟内即可得到改进的注意力内核。

图片

根据斯坦福的KernelBench基准测试,该流程可以为大部分问题生成数值正确的内核。 推理时间预算对解决率有显著影响,分配更多时间可以获得更好的结果。

图片

这些结果表明,增加推理阶段的计算资源可以显著提升DeepSeek-R1生成优化GPU内核的性能。

参考内容:https://developer.nvidia.com/blog/automating-gpu-kernel-generation-with-deepseek-r1-and-inference-time-scaling/

今天关于《DeepSeek R1不编程就能生成GPU内核,比熟练工程师好,惊到了英伟达》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>