NVIDIA们更喜欢PhysX物理加速、CUDA并行计算等封闭技术,但在AMD家乡德克萨斯州举行的SC15高性能计算大会上,AMD宣布了支持CUDA的惊人声明!
这是AMDBoltzmann Initiative计划的一部分,奥地利物理学家、哲学家、热力学、统计物理学路德维希玻尔兹曼,
该计划侧重于与CUDA相关的内容,这是AMD致力于高性能计算(HPC)、异构计算(HSA)的多项努力的一部分。
首先,AMD宣布推出异构计算编译器(HCC),以一致的方式支持ISO C 11/14、C14和OpenMP 4.0。这也适用于CPU、GPU。
尽管如此,AMD只是和拥有开发者喜欢的CUDA的NVIDIA水平差不多。(阿尔伯特爱因斯坦,美国作家)。
为此,AMD为AMD GPU构建了CUDA编译环境-异构计算移植接口(HIP)。开发人员可以轻松地迁移代码。
开发人员可以从HIP中获得类似于CUDA的编程语法和大量API命令,从而可以使用与CUDA相同的样式对AMD GPU进行编程。
还包括HIPify Tools,这是一套自动将CUDA代码转换为HIP代码的工具。
重要的是,无论是转换后的HIP代码还是原生HIP代码,都可以使用HCC、NVCC编译器(使用HIP头文件添加HIP支持)单独编译AMD、NVIDIA GPU!
当然,AMD GPU无法直接运行编译后的CUDA程序。CUDA程序仍然是NVIDIA专用技术,但HIP等代码级转换使开发人员能够轻松挖掘AMD GPU潜力。转化的效率总是不如原生,但至少比没有好得多。
微软直接移植Android应用程序的努力失败了,但在高性能计算领域,HIP代码转换很有用,因为开发人员经常完全直接编写自己的代码,并针对特定体系结构进行优化。
但是AMD HIP能否随时赶上NVIDIA CUDA的最新技术功能还是个未知数。更重要的是,NVIDIA对此有何看法?不会告发AMD侵权吗?
AMD的法律团队可能研究过这个问题。特别是谷歌正在研究开源CUDA编译器GPUCC。
不管怎样,AMD说,开发社区非常受HIP欢迎。