前段时间,NVIDIA在北京国家会议中心举办了GTC(GPU Technology Conference)大会亚洲站的会议。在会上,NVIDIA总裁兼CEO黄仁勋发表了主题演讲。在演讲中,黄仁勋不仅为大家介绍了新一代GPU在传统PC领域的应用情况,更为我们介绍了GPU在工作站以及高性能计算方面所取得的成就。除了新技术为传统PC应用所带来的新体验,其在高性能计算领域的应用则让很多与会者大开眼界。NVIDIA为什么能够在高性能计算领域获得成功?笔者认为,这其中有三方面的因素影响。
首先,在高性能计算领域,功耗已经成为了限制行业继续发展的一大阻碍。由于普通CPU在线程以及核心数量上与GPU存在着巨大的差距,因此,如果单纯依靠CPU,超算性能的提升将在很大程度上受限于能源成本以及功率限制。根据之前浪潮集团高级副总裁王恩东的表述,在高性能计算从千万亿次向百亿亿次前进的过程中,性能需要提升1000倍,但以现在的技术水平来说,功耗最高只能提升三倍。否则按照现在的功耗水平来计算的话,一台百亿亿次计算机需要一座核电站才能满足其功率需求。
因此,高性能计算在今后一段时间内的发展将主要依靠提高并行化水平和效率来完成。而NVIDIA所生产的GPGPU的优势就在于大量核心以及高度并行化的处理架构。这也正是以NVIDIA所代表的GPGPU产品能够在超算行业产生大量应用的原因。
其次,有了GPGPU模式,为什么只有NVIDIA成功?
但罗马不是一天建成的,用一句老掉牙的话来说,黄仁勋在下一盘很大的棋。
我们都知道,软件是应用的核心;没有软件,再强悍的硬件和架构都没法发挥自身的优势,从而变成一堆废铁。这句话每个人都知道,但很少有人再继续追问,软件的核心又是什么。可以说GPGPU(通用GPU)能够拥有今天这番局面在很大程度上,与NVIDIA发现了什么是“软件的核心”有关。
一种新的硬件和架构能够流行起来,其本身具备的性能和优势仅仅是一方面,更重要的是有众多的开发者为其源源不断的提供应用程序来支持。iOS和Android的流行就是这一理论最好的证明。
数年前,NVIDIA和竞争对手在同一时间推出了具备通用计算能力的GPU,也就是我们所说的GPGPU。但不同的是NVIDIA的GPU所采用的编程环境是封闭的,而竞争对手所采用的编程环境是基于OpenCL的开放环境。在当时,很多评论认为对于一个新生事物来说,开放的策略会吸引更多的合作者,因此在竞争中更有优势。
但实际的情况并非如此。在产品发布之后的数年中,NVIDIA与全球知名的教育机构展开了广泛的合作,并派驻工程师和研发人员来到学校中现场教授针对NVIDIA产品的编程方法和技巧,使得一时间,相关方面的软件开发人才储备迅速增加。而NVIDIA所选择的这些教育机构就包括了我们所熟知的清华和北大。
当然,与教育机构的合作仅仅是解决了应用开发的人才储备问题,现实的问题同样需要解决。NVIDIA通过派驻工程师和指导开发等形式,与众多软件厂商建立起了长期的合作关系,使得众多软件都可以为NVIDIA GPU提供额外的加速特性,而更高的软件性能同样是提升软件用户体验的重要体现。通过这种双赢的合作,NVIDIA很快打开了局面,并在一定程度上建立了自己的软硬件合作联盟。
而反观竞争对手,由于缺乏厂商的主导以及商业同盟,尽管采取了开放的开发环境,但无论是民用领域还是企业、科研领域,其上的应用软件都很少,开发人才更是难觅踪影。
在实际的GPGPU应用当中,国家超级计算天津中新是目前NVIDIA对外宣传的形象工程。由于该中心所拥有的天河1A是2010年世界排名第一,目前排名第二的大型超级计算机,并且大量采用了NVIDIA Tesla系列GPGPU作为专用浮点处理器。根据超级计算天津中心的孟博士在GTC大会现场的介绍,目前,该中心已经有合作单位200多家,其中正式签订合同的用户为80多家。而这也就意味着这80多家单位都需要根据自己应用的需求和特点编写相应的计算软件,并且需要在保证安全的同时注意提升效率。
能够有如此多的相关行业应用,对我国超算行业以及NVIDIA来说都是一个很好的现象。对并行计算软件编程的重视,不仅是对自家产品最好的售后服务,更是提升产品生命周期的最好方式。根据2011年11月的统计,全球超算500强中采用GPGPU进行浮点运算的系统共有37套,其中NVIDIA 产品占领了其中的35套,相对于2011年6月的超算排行榜来说,NVIDIA成长率接近200%。能够有这样的增长率,与NVIDIA相关产品的软件编程环境趋近成熟也有很大的关系。
凭借NVIDIA产品本身的优势以及在软件编程方面持续不断的投入,NVIDIA终于逐渐成为高性能计算异构架构的代表。而其所带来的性能和功耗优势也必定会在未来成为更多高性能计算项目所选择的对象。在消费级领域中到处碰壁的NVIDIA也终于找到了自己的突破口;还是那句话,这是一盘很大的棋,黄仁勋和众多参与者如何走位还要看未来的发展。