科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道高性能计算NVIDIA:Tesla CUDA是最好的HPC工具!

NVIDIA:Tesla CUDA是最好的HPC工具!

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

GPU通用计算已经是一个不可阻挡的潮流,那么在2010年里,GPU通用计算又将如何发展呢?为此我们专访了在GPGPU方面走在业界前端的NVIDIA公司Tesla产品总监Sumit Gupata先生,就相关的热点话题进行了深入的交流。

作者:赵效民 来源:ZDNet【原创】 2010年3月15日

关键字: NVIDIA GPU Fermi CRM

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共8页)

NVIDIA的GPU计算开发环境——CUDA生态环境蒸蒸日上

一种新的计算系统与架构的出现,对于其发展与普及起到最关键作用的,并非是硬件的性能,它只是一个敲门砖,更重要的是整体的生态环境建设,说到底就是应用与开发环境。我们可以举一个典型的例子——HD DVD与BD之间的高清影碟的标准之争。熟悉这场于2008年年初结束的竞争大战的读者都知道,HD DVD标准最终战败的主要原因并不是硬件性能上的差距,相反在与传统DVD业界友好性和性价比方面,HD DVD仍然有较大的优势,虽然在存储容量上有劣势,真正让它走向灭亡的是好莱坞七大制片与发行商中只有两家支持它,另外五家都只采用BD格式发行自己的影片,影片对于光盘来说就是一种应用,所以应用环境是否能健康的发展,对于相应硬件与技术标准、架构的生存是至关重要的。

作为硬件与基础的技术规格,是客户能感兴趣的第一道坎,我们可以通过一些数据对比来看一看,第一代的Tesla(C870/D870/S870)在发布时基本上没有双精度浮点计算能力,因此它对于那些需要高精度的HPC应用来说,基本是不可用的。到了第二代才具备真正可用的双精度浮点计算能力,以C1060为例,双精度浮点计算能力峰值为78GFLOPS,而目前主流服务器用的CPU的双精度浮点运算能力则为48(英特尔Nehalem-EP)至63GFLPOS(AMD的伊斯坦布尔),所以在这方面相对于CPU的优势也并不十分明显,当然如这只是一个纯理论的比较,事实上GPU的优势还体现在强大的并行处理能力上,不过对于用户来讲,这似乎并不能迅速的量化为可比的性能数据。

到了第三代的Fermi,单GPU的双精度浮点运算性能为520GFLOPS,最高可达630GFLPOS,这是什么概念呢?AMD今年将要发布的新一代12核心的马尼-库尔处理器的理论浮点性能峰值为110GFLOPS,若是组成4插槽的MPP或是服务器节点的话,性能为440GFLOPS,也就是说一颗Fermi GPU的浮点性能就已经超过了一台4插槽的马尼-库尔服务器,或者说1000多颗Fermi的GPU就可以达到使用10万多颗CPU的2006年TOP500冠军Blue Gene/L的浮点计算能力((Blue Gene/L所采用的是一个专门开发的ASIC,集成了两个PowerPC 440的核心,严格的说不算是一个CPU),这种明显的优势肯定能吸引不少客户的眼球。

所以,Fermi的确是非常吸引人,但当客户被吸引来之后,就会发现面向GPU的编程与CPU的编程是有很大差别的。在以前最古老的GPU计算时代,编程人员要将数据“像素化”,因为GPU当时就是用来做像素处理的,所以这就要求应用开发人员也要掌握丰富的图形处理的编程技术,把传统的计算应用映射为像素处理操作,再调用图形处理的API(OpenGL和Direct 3D),让GPU去“模拟”运算。所以,GPU编程就成为了GPU通用计算应用软件开发的一大挑战,也直接危及到GPU计算发展所需要的生态环境的建设,NVIDIA也清楚的看到了这一问题,所以他们推出了统一计算设备架构(CUDA,Compute Unified Device Architecture),它并不是一种编程语言而是一个编程环境/平台。

简单的说,CUDA将GPU计算应用程序的开发难度大大简化了,尽量做到了GPU面向开发人员的透明化。开发人员不需要去了解GPU具体的架构,它被CUDA所屏蔽,开发人员只需要使用CUDA所支持编程语言/API和CUDA所提供的开发库(与主流并行计算应用相关的基本运算库)、运行期环境(应用编程接口和运行期组件)和驱动(支持CUDA的硬件的抽象层)去编写自己的程序然后再调试和优化,即做到主流开发环境与GPU处理架构相隔离,开发人员不再需要额外掌握图形处理编程技术。

Sumit Gupata表示,现在在NVIDIA网站的CUDA Zone上,每周有25000个点击和18万个CUDA 2.3版本的下载。而在2009年11月已经发布了CUDA 3.0Beta版本,计划今年3月将推出正式版本。这些下载的数量能够表明GPU它的应用目前的趋势还是非常火的。

目前基于CUDA的HPC应用开发库与工具软件正在逐步增多,也让CUDA的生态系统渐入佳境

伴随着生态环境的完善与良性发展,Tesla面向主流的HPC领域也将拥有越来越多的机会,其中有不少都是奖金投入较多的领域,包括大学/理论研究、生物科学、政府实验室、国防、地球科学以及金融等

作为自主开发的编程环境,NVIDIA对CUDA是非常看重并且自信的。Sumit Gupata强调,“AMD也有GPU,但仅仅是基于图像处理类的GPU,他们号称愿意用GPU进行计算,也愿意推行架构,但实际什么都不做,基本上也是跟风吧。NVIDIA和AMD的区别在于, NVIDIA在GPU上投入的资金和精力是非常大的,为什么呢?我们首先不仅仅要在硬件上,在软件上也要有投入。这是因为现在对很多消费者来说,他们在使用电脑的时候,更多倾向于视觉的感受,也就是电脑越来越倾向于视觉化了。”

他接着说到,“现在很多的电脑游戏会有真实的图形模拟,大家打游戏的时候,比如用手枪点击一杯水的话,能够模拟出水杯碎了的效果。所以打游戏的人希望越来越多游戏的体验是模拟真实的环境。实际上这样一个游戏模拟真实的程序,它也是高性能计算的应用。”

CUDA 3.0相较以往的版本有了重大的改进,其中支持C++语言和支持Fermi架构是最大的亮点

而为了进一步完善CUDA的生态环境,以帮助自己的硬件平台更受欢迎。NVIDIA除了自己全力加强CUDA本身的能力之外,还联合全球知名的科学算法研究与开发机构、一流的系统厂商来为CUDA添砖加瓦。比如某些著名科学计算软件的CUDA API或插件,还有相关的调试与剖析工具、编译器、开发库等等。

NVIDIA为CUDA打造的并行计算应用开发生态环境

除此之外,NVIDIA还联合业界的力量组建了CUDA咨询与培训体系,全球超过300所大学都有CUDA编程方面的课程,这对于CUDA人才的培养显然极为有利。而在整体解决方案方面,NVIDIA也与著名的平台系统提供商合作,在OEM的基础上,更设立了Tesla首选供应商(TPP,Tesla Preferred Provider)的制度,让这个厂商也具备有帮助客户进行CUDA开发的能力,以更积极有效的推广CUDA+Tesla的HPC系统。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章