CUDA遭遇劲敌? GPU计算OpenCL标准分析

时间:2009-06-28   来源:   网友评论:0   人气: 504 作者:

2008年的图形市场,AMD凭借改良架构的HD4000系列开始收复失地,逐步蚕食NVIDIA游戏市场份额,但有一个领域AMD始终难以染指,那就是日益庞大的GPU通用计算市场。虽然AMD最先提出GPGPU的概念、虽然AMD显卡拥有更恐怖的浮点运算能力(理论上)、虽然AMD也有自己的FireStream流处理加速卡,但AMD没有自己的标准,根本无法同NVIDIA的CUDA统一计算架构及Telsa计算处理器相提并论。

在消费级市场,基于CUDA技术的PhysX物理加速和Badaboom视频编码所带来的超强性能令人惊讶不已,而在专业级的科学、气象、金融甚至是军事领域,海量并行计算对性能的渴求永无止境,CUDA所带来的超强运算能力正好符合科研工作者的需求,这也就是CUDA在近两年来发展如此迅猛的根本原因!

CUDA遭遇劲敌? GPU计算OpenCL标准分析(图二)

    面对前景如此广阔的市场,IT巨头们个个摩拳擦掌、欲大展身手,Intel、AMD、NVIDIA、IBM都纷纷致力于研发自己的通用并行计算平台,乘市场未成熟之际抢占份额,一时间场面比较混乱,没有统一的标准。

CUDA遭遇劲敌? GPU计算OpenCL标准分析(图三)

    天下大势,分久必合。这次关于开放式通用计算平台的统一,发起于以“封闭”着称的苹果公司。这个新的标准被称为OpenCL,英文全称是Open Computing Language。他们将这个标准提交到了The Khronos Group,这是一个业界的标准化组织,目前管理着大名鼎鼎的OpenGL(图形)和OpenAL(音频)

OpenCL为基石 GPU通用计算行业标准诞生

    负责推广OpenGL等开放标准的行业组织Khronos Group日前正式宣布,将组建一个新的“计算工作组”,负责起草针对GPU、CPU并行计算进行编程的全免费开放行业标准。苹果提出的OpenCL将成为该标准的奠基文档。

 

CUDA遭遇劲敌? GPU计算OpenCL标准分析(图四)
OpenCL一经提出就受到业界的大力支持

    该工作组的首批成员包括:3Dlabs、AMD、苹果、ARM、Codeplay、爱立信、飞思卡尔、Graphic Remedy、IBM、Imagination Technologies、Intel、诺基亚、NVIDIA、摩托罗拉、QNX、高通、三星、Seaweed、德州仪器和瑞典Ume 大学。工作组的目标非常明确,将运算核心越来越多,性能越来越强的GPU从仅限于图形运算领域的桎梏中解放出来,充分调动其运算能力。未来,该标准能够提供给不同厂商的硬件提供一个通用的应用程序接口,使计算机中的GPU和CPU共同发挥运算能力完成各类计算任务,包括同为该组织标准的OpenGL、OpenGL ES API加速,以及诸如物理效果运算,图像处理和图像识别等等。

    在WWDC苹果开发者大会上,苹果宣布预计明年发布的Mac OS X 10.6 Snow Leopard操作系统将引入名为OpenCL的新特性,通过基于C语言的编程接口实现GPU通用计算支持。Khronos工作组表示,他们欢迎成员企业和全球其他任何企业为开放通用运算标准提供内容。但毫无疑问,苹果提出的OpenCL已经成了该标准的奠基石。甚至现在看来,苹果当初的命名想必也已经考虑了成为行业标准的前景。未来该标准直接定名为OpenCL,从目前来看几乎是一件顺理成章的事情。

CUDA遭遇劲敌? GPU计算OpenCL标准分析(图五)

    当前,AMD和NVIDIA甚至Intel都有各自独立的GPU通用计算计划。而对消费者来说,一个开放的行业标准无疑要比各自为战的企业标准亲切的多。由于AMD、NVIDIA、Intel同为工作组成员,这一标准的提出为我们描绘了一个美好的未来:无需区分哪家厂商的产品,不分GPU、CPU,系统可以根据当时的应用需要,调动各个处理器的运算能力,以协同合作的方式最快速度完成工作。另外,Khronos Group还表示,该标准不仅面向桌面PC,还将针对嵌入式系统。从工作组名录中出现的诺基亚、爱立信、摩托罗拉、三星、高通等名字也能看出端倪,移动设备的通用计算肯定也在工作组的计划当中。

    OpenCL将统一管理一台电脑上的所有计算资源,比如你的多核CPU,以及多个GPU。OpenCL将这些资源统一看待,算作计算单元,并配置各种级别的内存:private、local和global。每个计算单元可以容纳多个工作单元,类似CUDA里的thread概念。


 

文章评论