北京特洛伊气体设备有限公司

当前位置:首页 > 新闻中心 > 正文

分析评论:NVIDIA、CUDA与x86

编辑:北京特洛伊气体设备有限公司  时间:2018/12/04

著名市场调研机构John Peddie Research近日撰文,对NVIDIA日前宣布的CUDA-x86编译器进行了分析和评论,并探讨了CUDA、x86技术的彼此关系,特别是NVIDIA究竟为什么要这么做。

其实事情并没有现象得那么简单。NVIDIA上周在GTC 2010图形技术大会上宣布的CUDA-x86编译器与其获取x86知识产权并没有任何关系。虽然这种说法在过去今年中从来没有停止过。事实上,这个所谓的CUDA-x86跨平台编译器只是用于在x86架构硬件上运行CUDA编写的应用程序。

乍一看,这似乎和NVIDIA的长期策略相抵触。NVIDIA一直在努力将应用程序的运行从x86 CPU转移到GPU上,那么为什么又要将自家硬件专属的CUDA程序移植到x86平台上呢?

其实,NVIDIA此番并不是要帮助CUDA开发人员,而是有新的目标。

NVIDIA官方宣称,CUDA-x86编译器的目的是降低开发人员CUDA入门的难度。现在绝大部分的计算基础架构都是基于 x86处理器的,想一下子转入GPU并行计算并没有那么简单,CUDA-x86就在两者中间搭建了这么一座桥梁。通过帮助程序员们首先在x86平台上开发、调试和运行CUDA程序,或者提供第二辅助平台,可能就会有越来越多的人对GPU CUDA感兴趣,并为之投入更多资源。

随着更多的开发人员投身于GPU计算,NVIDIA也只要让CUDA程序在x86平台上能够正常工作即可,没必要针对性地专门优化。举个例子,Intel Sandy Bridge、AMD Bulldozer新架构处理器都会支持双倍浮点性能的SIMD AVX指令集,可大幅提升程序性能,但是NVIDIA就用不着支持它——当然不是说NVIDIA肯定不会支持,只是说这么做会有违其初衷。

归根到底,CUDA-x86程序会比那些不支持CUDA但针对x86架构优化的程序要慢,甚至可能会慢很多,于是开发人员分别在 x86 CPU、NVIDIA GPU上运行CUDA程序就会看到明显的差距,而这种提速正好证明了NVIDIA的观点:在浮点密集型应用上GPU要比CPU快得多。

所以说,转到GPU上就可以看到十倍甚至上百倍的性能提升,这不仅会让越来越多的开发人员青睐NVIDIA硬件,更有利于NVIDIA的GPU计算优势市场宣传。这,才是所谓CUDA-x86编译器的真正意图。