用CUDA为GPU编程实在太难了。为了让没有CUDA编程经验的人写出和专家效率相当的GPU代码,现在OpenAI推出了一种新的语言和编译器——Triton。它的难度比CUDA低,但是性能却可与之相媲美。OpenAI声称:Triton只要25行代码,就能在FP16矩阵乘法shang上达到与cuBLAS相当的性能。OpenAI的研究人员已经使用Triton,来生成比同等Torch效率高出1倍的内核。Triton项目的负责人PhilippeTillet说:“我们的目标是使Triton成为深度学习CUDA的可行替代方案。”25行代码实现最佳性能Triton起源于Tillet在2019年学术会议MLPF上的一篇论文,当时他还是哈佛大学的一名研究生。Tillet解决的问题是如何开发一种cuDNN更具表现力的语言,既能够处理神经网络中涉及的矩阵的各种操作,同时兼具可移植性且以及和cuDNN相媲美的性能。现代GPU大致分为三个主要组件——DRAM、SRAM、ALU,对这些资源进行调度管理十分复杂,即便是熟悉CUDA的程序员。Triton可以将这些优化过程完全自动化,让开发者可以更好地专注于并行代码的高级逻辑。以矩阵乘法为例,能够为逐元素运算和归约编写融合内核很重要,但考虑到神经网络中矩阵乘法任务的重要性,这还不够。Triton非常适合这些应用,只需约25行Python代码即可实现最佳性能。而另一方面,在CUDA中实现类似的过程需要花费更多的精力,甚至可能会降低性能。手写矩阵乘法内核的一个重要优点是它们可以根据需要进行定制,以适应其输入和输出的融合变换。如果没有Triton,对于没有特殊GPU编程经验的开发者来说,矩阵乘法内核的修改是非常困难的。Triton背后的原理Triton的良好性能,来自于以Triton-IR为中心的模块化系统架构,这是一种基于LLVM的中间表示。@triton.jitdecorator通过遍历提供Python函数的抽象语法树(AST),产生的Triton-IR使用通用SSA构建算法上的动态。生成的IR代码随后由编译器后端进行简化、优化和自动并行化,然后转换为高质量的LLVM-IR(最终转换为PTX)。研究人员发现,数据可以通过查看计算密集型块级操作(例如tl.dot)的操作数自动存储到共享内存中,并使用标准活性分析技术进行分配/同步。另一方面,Triton程序可以通过同时执行不同的内核实例跨SM进行高效和自动并行化,以及通过分析每个块级操作的迭代空间,并在不同的SIMD中进行充分分区将SM内单元并行化。目前Triton仅适用于英伟达GPU,但官方表示AMDGPU以及CPU的版本正在开发中。开源地址:https://github.com/openai/triton论文:https://dl.acm.org/doi/abs/10.1145/3315508.3329973
亚汇网实时消息,北京时间20日凌晨,美股周四收高,科技股领涨。市场正权衡疫苗进展与欧美疫情形势恶化的影响。美联储官员呼吁采取财政刺激措施支持经济。美...
美银证券发研报指,英国反垄断机构竞争与市场部门(CMA)放宽水务项目价格规管,同意准许回报率提升至5.08%,包括长建(1038.HK)旗下NW,回报高于去年英国水资源监管机构的规定。...
9月25日,首届北京国际游戏创新大会(BIGC)在北京举行。开幕式当天,主办方协同伽马数据共同发布了《2020中国游戏创新及发展趋势报告》(以下简称《报告》),对中国游戏整体市...
上市仅半年的伟源控股9月25日午后跳水,暴跌逾90%,单日蒸发逾40亿港元。截至当日收盘,股价报0.236港元,创上市以来新低,跌幅94.11%,总市值2.5亿港元,单日抹去上市以来累计涨幅。...
公司是中国主要专业从事陶瓷电容器研发、生产、销售和技术支持的企业.公司依托二十余年的专业经验拥有多项具有知识产权的核心技术是国家高新技术企业福建省"十一五"规划电子元器件发展支柱企业福建省第二批创新型...
本文“英伟达 CUDA 太难:OpenAI 出手要取代它,新语言性能相当但编程更简单”由FX112财经网
首发,欢迎转载,转载请带上本文链接。
免责声明:FX112财经网(https://www.942fx.com)发布的所有信息,并不代表本站赞同其观 点和对其真实性负责,投资者据此操作,风险请自担。部分内容文章及图 片来自互联网或自媒体,版权归属于原作者,不保证该信息(包括但不限 于文字、图片、图表及数据)的准确性、真实性、完整性、有效性、及时 性、原创性等,如无意侵犯媒体或个人知识产权,请联系我们或致函告之 ,本站将在第一时间处理。关注FX112财经网,获取最优质的财经报道!