古色古香米花糖 发表于 2008-11-29 23:38:57

同为GPU加速 NV谈CUDA和OpenCL的区别

问:新一代MacBook是否支持CUDA?
    答:支持!新一代MacBook所采用的GeForce 9400M GPU(图形处理器)拥有16核心CUDA架构,因此能够运行基于CUDA的应用程序以及对其进行编程。现在,Apple在其网站上给出了一个链接,可下载适用于OS X操作系统的CUDA。

    问:新一代MacBook是否支持OpenCL?
    答:支持。这些系统都将支持OpenCL。

    Apple已经在其网站上发布了下列信息:“又一种Snow Leopard技术 –OpenCL(开放性计算语言)让开发人员能够高效地利用图形处理器(GPU)目前尚未释放出来的高达数G浮点性能的强大计算动力。GPU(图形处理器)的处理速度已接近每秒一万亿次运算,它们能够执行的任务远远超出了绘图的范畴。OpenCL能够利用这种强大动力并将这种动力应用到通用计算中。”

    问:NVIDIA®(英伟达™)是否支持OpenCL?
   答:当然支持。Apple是一家实力强劲的合作伙伴,他们宣布以GPU(图形处理器)作为其操作系统以及应用程序战略的核心,这是对并行计算运动提供强有力的支持。我们已经在CUDA身上投入了五年多的精力,而支持CUDA的NVIDIAGPU(图形处理器)数量也超过了8000万颗,NVIDIA®(英伟达™)是Mac OSX、Windows以及Linux等各种操作环境的最佳平台之选。

    问:NVIDIA®(英伟达™)是否参与过或正在参与OpenCL的制定?
    答:是的。作为GPU(图形处理器)技术的行业领袖,我们有责任推动和发起并行计算运动。我们已经在CUDA身上投入了五年多的精力,CUDA团队将继续支持我们所有的合作伙伴,帮助他们将并行GPU计算推向市场。

    问:OpenCL是否基于CUDA?
    答:针对OpenCL以及CUDA,编程人员可以使用相同的理念体系以及并行编程策略。二者在句法上非常相似,但是OpenCL更适用于OSX,而CUDA则基于标准的C语言,可适用于各种平台。我们已经设计出了软件栈,因此对我们的硬件来说,OpenCL以及CUDA看上去是一样的。它们只是通向GPU加速代码的两种不同途径而已。

    问:如果OpenCL不是基于CUDA,那是什么原因?
    答:CUDA是一种通用、跨平台的C语言环境,而OpenCL则更适用于Apple以及OS X。

    问:如何对比 CUDA和OpenCL?
   答:CUDA包含编译器、软件工具以及应用程序接口(API),是一款经过精心调试与完善的编程环境和架构。对我们而言,OpenCL是进入CUDA并行编程架构的另一种应用程序接口。针对OpenCL以及CUDA,编程人员可以使用相同的理念体系以及并行编程策略。这两者在句法上非常相似,但是OpenCL更适用于OS X,而CUDA则基于标准的C语言,可适用于各种平台。我们已经设计了软件栈,因此对我们的硬件来说,OpenCL以及CUDA代码看上去是一样的。它们只是通向GPU加速代码的两种不同途径而已。

    问:两者是否兼容?
   答:CUDA和OpenCL二者的应用程序接口(API)有所不同,因此代码也不会完全兼容。然而,它们在定义数据并行机制方面有类似的构造,因此它们的代码会非常相似,而且移植工作也会非常省力。现在的情况是,CUDA已经面世并且得到了包括OSX在内的所有大多数操作系统的支持,这就意味着开发人员现在拥有了一个稳定、普及的环境来开发gigaflop级浮点性能GPU应用程序。这种开发环境在OpenCL发布时可通过OpenCL轻松地与OS X整合在一起。

    问:OpenCL是否会代替CUDA?
    答:不会。OpenCL实际上可利用CUDA驱动程序堆栈来在NVIDIA GPU(图形处理器)上实现超高性能。

    问:你们是否支持将OCL制定为一种标准?
    答:当然支持。我们支持所有的标准制定工作。
页: [1]
查看完整版本: 同为GPU加速 NV谈CUDA和OpenCL的区别