详细内容或原文请订阅后点击阅览
一次学习Triton一个内核:向量加法
GPU编程,优化和您的第一个Triton kernelthe tost Learning triton One内核的基础知识首先出现在数据科学上。
来源:走向数据科学,一些优化有很长的路要走。像GPT4这样的型号的培训成本超过1亿美元,这使得效率的增长价值超过一百万美元。优化机器学习模型效率的一种强大方法是将其一些组件直接在GPU上编写。现在,如果您像我一样,简单地提及CUDA内核就足以使您的脊椎发冷,因为它们很复杂,可以写和调试。
gpt4 培训超过1亿美元 1%效率增益 价值超过一百万美元 超过一百万美元 直接在gpu幸运的是,Openai于2021年发布了Triton,这是一种新的语言和编译器,将CUDA的大部分复杂性抽象出来,并允许经验不足的从业人员编写表现量的内核。一个值得注意的例子是不舒服,这是一项LLM培训服务,承诺将更快30倍的培训,而记忆使用量减少60%,这要归功于用Triton内核更换了用Pytorch编写的层。
OpenAi Triton 不舒服 30倍更快的训练 少60%的内存使用 用Triton内核代替用Pytorch编写的图层在本教程系列中,我们将学习GPU体系结构的基础知识以及如何实现高性能Triton内核!本系列中介绍的所有代码将在https://github.com/rpegoud/triton-kernels上找到。
https://github.com/rpegoud/triton-kernels GPU架构基础知识 在本节中,我们将详细介绍(NVIDIA)GPU的基础知识,以使我们开始并在本文结尾之前撰写我们的第一个Triton内核。 nvidia 从最小的软件单元开始,我们可以描述执行单元的层次结构如下: 线程:最小的工作单元,它们运行用户定义的内核代码。 线程 工作单位 WARPS:最小的调度单元,它们始终由32个并行线组成,每个线程都有自己的指令地址计数器和注册状态。经线中的线程开始一起开始,但可以自由分支并独立执行。 WARPS 调度单位 一起开始 免费分支 线程块 扭曲 gpuhttps://github.com/rpegoud/triton-kernels
GPU架构基础知识
在本节中,我们将详细介绍(NVIDIA)GPU的基础知识,以使我们开始并在本文结尾之前撰写我们的第一个Triton内核。nvidia