OpenCL未来发展目标激进
通过OpenCL的路线图我们能够看出,目前OpenCL还处于Alpha版本,但NVIDIA的产品已经可以非常好的支持OpenCL。明年第一季度Khronos Group会发布OpenCL Beta版本,而OpenCL1.0正式版也可能在明年正式推出。不过OpenCL最开始可能出现在Mac OS上,不过随着以后的逐渐扩展,例如Windows或者Linux等系统都将会得以支持。
对于CUDA C语言,NVIDIA一直不断地对其进行更深层次的开发,同时也不断的有新版本的出现,到目前为止已经是CUDA 2.0。CUDA C语言NVIDIA研发已经超过5年时间,基本上从2003年左右就开始开发这个语言开发。
并且到目前为止,开发人员的数量已经是超过25000人,应用程序超过100个,特别在科学计算的领域里CUDA的应用极为广泛,几乎涉及到各种各样的HPC高性能计算的领域。甚至现在HPC进入排行榜前100的高性能计算机里面也有使用NVIDIA基于CUDA的Tesla系统,它的开发语言正是使用了CUDA C语言。目前GPU集群组成的高性能计算机集群数量已经达到了30个,在中国也有相关产品。
CUDA C语言是一个跨操作系统的开发工具,现在支持Windows、Linux、Mac OS,几乎把控了目前最主流的操作系统。NVIDIA的CUDA C语言提供了很多的库,这些库主要包括FFT、BLAS等,它们可以提供各种各样现成的代码让编程人员使用。
也许有这样的开发者,他可能对CUDA并不熟悉,但他又想要使用CUDA的高性能计算该怎么办?很简单,他就把现有的应用软件,例如FFT,使用CUDA的FFT的代码直接替换,就这样他便可以获得20倍以上的性能提升。也就是说,这些库是CUDA C语言非常重要的资源,可以让大家缩短研发周期、体验CUDA带来的高性能,例如一些数学软件像Matlab、Mathematica、LabView都有CUDA的插件,可以使用C语言的插件让他更容易的利用CUDA。