OpenAI的Triton能替代Nvidia的CUDA吗

先说我的观点,我觉得可以,但是应该不是现在。

然后得补个概念,啥是Triton

OpenAI的Triton 是一种专为高效编写深度学习运算而设计的编程语言和编译器。它旨在简化用户编写针对现代GPU(尤其是NVIDIA GPU)的自定义运算代码的过程,从而提升性能和效率。CUDA Toolkit 则是NVIDIA提供的一个全面的GPU计算平台和编程模型,包含了编译器、库、工具和文档,支持开发高性能的GPU应用程序。

Triton与CUDA Toolkit的关系
  1. 依赖关系:

    • CUDA Toolkit 是Triton运行的基础。Triton依赖于CUDA Toolkit中的编译器(如nvcc)、库(如cuBLAS、cuDNN)以及其他开发工具来生成和执行高效的GPU代码。(需要强调现阶段,其实cuBLAS就可以不太用了,比如我自己写矩阵乘,一会的demo就是)

    • Triton 使用CUDA编译器将其代码转换为高效的GPU内核,因此需要CUDA Toolkit的支持才能正常工作。(需要强调现阶段)

  2. 功能定位:

    • CUDA Toolkit 提供了底层的GPU编程接口和优化工具,适用于各种GPU计算任务。

    • Triton 则专注于简化和优化深度学习相关的GPU运算,提供更高层次的抽象,使得编写高性能GPU代码更为便捷。

那我都有CUDA了,这不又造轮子吗?

不是的。

第一:虽然说现阶段的Triton比较高维,脱胎在CUDA之上(其实现在已经很少设计cuda toolkit了,主要是driver和一些特定函数,以后就只会是driver),最终是要跨平台的。

第二:我好多算子可以在triton上写,高维,编辑便捷,同时对下的调用要远好于cuda,好多都可以全自动,比如显存和读取矩阵的方式等等

9月17号Triton大会上,那可是能来站台都来站台了,就不说什么各种chip公司,高通,intel,AMD,连NV自己都来了

图片

图片

这人就是OpenAI 的 Philippe Tillet,Triton 的最hardcore 的contributor

图片

PT也直接拿出大家对Triton的吐槽来说事,其实这也是现在着急要做的,因为现在还没那么通用,离它最重要的工作还差得远。

稍微解释一下主要分支和不同后端的编译流程:

AST:

抽象语法树(Abstract Syntax Tree)。

这是编译器将源代码解析成的树状结构,表示语法结构。

Triton-IR:

Triton 中间表示(Intermediate Representation)。

这是Triton编译器内部使用的一种中间表示,用于将代码转换为 GPU 代码之前的步骤。

TritonGPU-IR:

Triton GPU 中间表示。

专门针对 GPU 的中间表示,用于进一步优化和转换为具体的 GPU 指令。

LLVM-IR:

LLVM 中间表示。

底层系统中间表示,能够被转换为具体目标机器代码。LLVM

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值