发布于: iPhone转发:3回复:7喜欢:10
转:英国一家初创公司,推出了针对AMD的CUDA程序编译工具,而且免费商用。
工具一经发布就引发了网友们的广泛热议,并登顶了HackerNews热榜。
该工具名为SCALE,开发者给它的定位是一个GPGPU(通用GPU)编程工具包。
目前已有大模型框架llama-cpp等9个程序通过测试,实现了正常运行。
与其他实现方式不同,SCALE直接模拟CUDA工具包的安装,不需要转换成其他语言就能源到源地完成编译。
因此,像内联PTX这种英伟达专用的中间语言,SCALE同样能够提供支持。
无需转换,让AMD跑起CUDA
官网介绍显示,SCALE主要有三个组成部分——兼容的nvcc编译器、CUDA运行时和驱动API的AMD实现,以及ROCm库。
其中编译器可以把用包括nvcc、内联PTX等在内的CUDA专属语言编写的程序,直接编译成可在AMD GPU上运行的二进制代码。
ROCm库则用来提供“CUDA-X”API,SCALE在处理cuBLAS和cuSOLVER等库时均采用这种方式。
SCALE的关键创新点在于按原样接受CUDA程序,而不必将它们移植到另一种语言,兼容nvcc和clang等多种编译方式,同时现有的构建工具和脚本(如cmake)可以正常工作。
按照官方的说法,SCALE实现了对CUDA的完全兼容,让开发者无需针对不同GPU平台分别编写代码。
这一点与AMD推出的HIP存在很大不同,因为HIP是通过一定方式对CUDA代码进行重写,遇到复杂的宏可能无法正确理解,也不支持内联PTX等专属语言。
甚至SCALE作者认为,HIP并不能解决CUDA兼容性问题。
另外,SCALE的语言是CUDA的超集,提供一些可选的语言扩展,可以使希望摆脱nvcc的开发者更轻松、更高效地编写GPU代码。
作者表示,希望未来开发者可以只编写一次代码,就能不同硬件平台上运行,并正在着手通过弥合流行的CUDA编程语言和其他硬件供应商之间的兼容性差距。
目前,SCALE对AMD各系列GPU的支持情况如下:
已支持:gfx1030(RX6000系列)和gfx1100(RX7000系列)
“似乎有效”(seem to work):gfx1010(RX5000系列)和gfx1101
正在适配:gfx900(RX Vega系列)
另外,作者测试了一些CUDA开源项目,并利用SCALE成功运行了9款CUDA应用。

全部讨论

07-17 19:45

这不是对英伟达的巨大打击吗

今天 00:01

英伟达大跌不吹了?

今天 00:18

没有版权问题么?另外对这种裱糊手法,并不看好

07-17 20:11

利好amd

07-17 19:49

哈哈

今天 01:04

撕开一点口子

也许某一天,人工智能开发它需要的芯片?