|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
作者:NVIDIA公司中国区市场总监 魏鸣
美国著名计算机科学家、田纳西州大学计算机创新实验室主任Jack Dongarra博士曾经说过,将来的计算架构会是CPU和GPU(图形处理器)的结合。今天,这一预言正在变为现实,2009年是GPU计算发展的转折点,今后不论是视频应用还是网络应用的开发商,都会开始意识到GPU的重要性,并且利用GPU的计算优势去开发新的应用,“CPU+GPU”的异构计算会成为以后的主流趋势。
现在很多人在市场上买电脑时都会说:我要独立显示芯片。因为之前大家主要是使用PC完成一些简单的应用,而现在有更多CPU满足不了的需求,需要更强大的GPU功能。比如现在人们对网络上视频、照片的需求越来越大,Facebook目前在中国还没有被允许开展业务,但在国外每个月上传的照片达8亿张;每天有1.7 亿个视频在优酷网站上被播放;三分之一的美国人玩网络游戏照片、视频、游戏是人们生活中越来越不可或缺的一部分,而视频应用、照片处理等对GPU的要求最高,因为它需要同时处理大量数据。一台好的笔记本电脑必须配置一个独立的显卡,才能把这些事做得更快更好。
不夸张地说,视频时代已经到来,GPU计算会越来越成熟,越来越多基于GPU开发出来的新应用将引爆“计算临爆点”:GPU不仅是未来计算的趋势,而且是颠覆性的趋势。
为什么网络视频时代的到来意味着GPU的新纪元呢?我们知道,中央处理器(CPU)的设计宗旨是要从指令流中得到最高的处理效能,即用最短的时间完成一项任务,这就是串行计算;但串行计算架构的CPU天生就不适合并行计算工作,相比之下,始于图形处理的GPU一开始就是被设计来处理大规模的并行计算,数千万的多边形和像素的并行处理,使得GPU在发展的同时不断地加入更多的处理核心并完善并行处理能力,可以同时处理海量数据。如Jack Dongarra所说,最好的计算架构是CPU+GPU协同运算架构。在“CPU+GPU=计算”这个等式中,CPU目前有4个核,GPU这个核将会变得很重要,主要是因为GPU在照片和视频领域的独特优势。现在国内很多很火的游戏都是基于GPU计算开发的,而诸如地质勘探、生物科学、流体力学、金融建模、医疗成像等新兴应用领域,也都开始利用GPU强大的并行处理能力。
由于我们的个人电脑大多基于英特尔X86架构,所以必须由CPU来调度。GPU跟CPU分工不同,有的程序可能在CPU上跑比在GPU上快,但是有的程序在GPU上跑比CPU会快几十倍甚至几百倍,比如整数运算CPU做得非常快,但是浮点运算GPU比CPU快得多,所以把浮点运算放在GPU上进行,整数运算放在CPU上,是最有效率的解决方案。这种“异构计算”真正实现了系统整体计算能力的最大化利用:GPU和CPU协同工作,GPU处理大量的图形和并行处理,CPU处理操作系统和指令的逻辑控制,两者的协同比以往单纯CPU运算高出几十倍甚至几百倍。
因此,现在世界上最主流的两种操作系统,即微软和苹果的OS都已经内置了GPU计算。微软最新发布的Windows 7第一次内置GPU计算,获得了明显的效能提升:第一是更快,大家最关心操作系统的速度问题,Win 7内置的GPU可以调动CPU的计算功能,所以它的处理速度很快;第二是整合了GPU的新功能,使Win 7无需第三方软件就可以实现多种媒体功能;第三是“真”,用户玩游戏时可以享受到三维立体效果,这些应用都是因为调动了GPU计算的加速功能才得以实现。而苹果最新的Mac OS X10.6 Snow Leopard(雪豹)操作系统,也通过OpenCL(Open Computing Language)支持GPU通用计算加速。OpenCL是由苹果公司发起,业界众多著名厂商共同制作的,面向异构系统通用目的并行编程的开放式、免费标准,也是一个统一的编程环境,能够让操作系统更好地利用GPU的性能。
未来的计算模式是什么?CPU和GPU将会合二为一还是分开?现在还很难说。但在今天,协同计算是大方向,根据不同的应用选择合适的处理器,使用户的投资回报和运算速度更优化。 |
|