POPPUR爱换

 找回密码
 注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

搜索
查看: 1863|回复: 14
打印 上一主题 下一主题

GPGPU:CPU门口的野蛮人

[复制链接]
跳转到指定楼层
1#
发表于 2009-8-10 22:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  离飞思卡尔CTO LisaT.Su在他们的FTF大会上发表有关“半导体竞争的关键在于能否从‘频率’以外的地方寻找并实现差异化技术”的观点不到两个月,我在北京的一场有关NVIDIA GPU技术讲解会的现场再次听到了类似的观点。不同之处在于,LisaT.Su对“差异化技术”的定义重点落在“多核处理器”上,而NVIDIA的专家强调的则是GPU在通用计算领域令人惊讶的“可能性”。
  NVIDIA有关专家对GPU同CPU在计算性能上的性能比较似乎让人再次感受自去年开始的“GPGPU同CPU竞争愈演愈烈”的话题,CPU的传统领域正在遭遇强悍的挑战……但显然,NVIDIA还并不想过早地让人们认为GPU想要取代CPU,并且非常小心地澄清了二者应用领域的不同。
  从硬件到软件的改变
  这种事情(取代CPU)是否会发生呢?也许我们该看看GPU是如何从着色器变成完全可编程处理器的。早在2002年,GPU供应商就将32位浮点技术搭载在GPU中,期待研究人员和开发人员会将GPU超强的计算能力用于应用程序而不是图形。但早期的GPU是用类似OpenGL或Cg的图形API编程的,这些API很难且大多数开发人员也不熟悉,另外,由于GPU内部缓存远远小于CPU,它只能执行预定好的任务,并不能像CPU那样去执行自定义的任务,所以尽管GPU浮点运算速度要远远高于CPU,但它还不能染指CPU的领域。
  但2006年出现在G8系列GPU的CUDA技术让形势出现了转变——从G80开始,传统的GPU管线模型被改变(统一构架可以动态分配渲染单元),使得它能以可编程处理进行工作。起先,我把NVIDIA的CUDA技术理解为一种应用于GPU的动态负载平衡技术,但更准确的定义应该是“CPU+GPU工作模式的可编程软件环境”——我相信,CPU和GPU的界线正由此变得模糊。
  Andy Keane是NVIDIAGPU计算事业部总经理,他对此更为清晰的定义是:CUDA不仅仅用于GPU编程,CUDA环境能够统一串行CPU编程以及采用GPU并行计算。串行计算是顺序处理的计算方式,并行计算则是一个问题可以被分割为并行处理的计算方式。而实际的应用程序会包含很多功能——一些适合于串行处理而一部分适合于并行计算,因此就有必要统一CPU和GPU编程。通过将并行计算放在GPU上而同时将串行计算放在CPU上,应用程序可以从这两种计算中充分受益。
  不难看出,CUDA正在试图解决多核CPU在多线程软件开发上的困境并以此作为GPU进入计算领域的基础:在多核或者是集群CPU上进行并行计算,开发人员必须要用软件的工具来解决并行计算问题,CUDA正是创建了一个可以统一并行和串行计算的环境,该环境包括一个C语言编译器,一个独立于图形驱动之外的专门的计算驱动程序,以及标准的CPU类型的工具,包括像调试程序和分析等。
  值得注意的是CUDA采用的是C语言,C语言编译器使开发人员能够以标准C语言对CPU和GPU编程——这可以更方便的影响到习惯于C语言而不是图形编程语言的通用计算领域中的大量开发人员;计算驱动程序是一种包含在标准NVIDIA驱动程序中的专用的驱动程序。CUDA驱动程序为超高速传递信息的方法等计算功能而进行了优化,此类信息传递涵盖了CPU与GPU之间的传输。
  性能的比较
  的确,CPU在并行计算上的不足让GPU找到了机会。CPU以很小的单位管理数据并顺序地进行处理。信息的每个部分都必须等待着经过单独的执行单元。单独的执行单元非常灵活,但不能并行地处理信息,CPU进行高速串行计算还需要依赖高频率和大缓存;GPU被设计用于进行一种完全不同的处理方式。GPU的架构可以轻松解决并行计算问题,在GPU内部具有快速存储系统,并且最多可有128个处理器,每个处理器都可以同时采用并行方式计算一部分数据,此外,GPU硬件设计能够管理数千个并行线程。数千个GPU线程全部由GPU创建和管理而不需要开发人员进行任何编程和管理。
  WalterMundt-Blum是NVIDIA公司专业解决方案事业部全球销售副总裁,在介绍NVIDIA两款计算产品Quadro和Tesla时,他引用了大量的事例来证明GPU在数据计算领域的优越性:神经建模如果只用CPU进行数据处理,大概需要花2.7天的时间,用GPU只需要30分钟;一家致力于CPU计算的公司Acceleware引入了一个手机天线设计项目,在进行电磁场模拟时,一个双核3.2GHzCPU需要15小时,而一个GPU只需要15分钟;在利用华盛顿大学的研究人员发布的Matlab代码(数学计算程序)进行编程时,使用CPU+GPU得到了17倍性能提升;牛津大学计算实验室的一个关于LIBOR应用的研究也采用了金融计算研究用途的GPU,结果显示,即便与专门的加速设备比较,GPU也能提供远比一个单独CPU或CPU加上加速器高得多的性能。
  我想,CPU阵营究竟能在多大程度上坦然接受这些对比?如果偏图形计算的Quadro对CPU领域尚不构成直接冲击,那Tesla足以让CPU阵营警觉。Tesla的定位是在主板级以及桌面电脑产品用于加速PC及工作站的计算速度,旨在让科学家和工程师利用GPU强大的并行计算能力强化自己的工作站,在桌面上实现大规模计算集群的计算能力。NVIDIA还为GPU推出了1U系统,针对数据中心应用,适合几台计算服务器以及数千台计算服务器的协作,满足大规模计算的需要。
  WalterMundt-Blum很高兴Tesla让数据中心没有GPU的现状成为过去。我的看法是:即使Tesla目前以协处理服务器的形式出现,它依然在取代CPU的传统领地。当然,NVIDIA截止目前的官方态度一直是强调GPU不会代替CPU,表示CPU可以解决无关联性的的数据处理,比如操作系统、数据库、产能、临时压缩、递归算法等;GPU则适合关联性强的海量数据处理,如石油天然气、地震资料处理、金融风险建模、医疗成像、有限元计算、生物序列匹配。
  CPU阵营的态度
  如果人们对“Telsa大胜IntelV8系统”这样的新闻标题已经不再感到新鲜的话,以Intel为首的CPU阵营肯定不会无动于衷。事实上,他们在去年甚至更早以前就已经开始布局。Intel的视觉计算小组 Visual Computing Group首席构架师DouglasCarmean曾表示:Intel未来的超多核处理器采用了类似GPU的构架,该处理器内核约10mm2,耗电量仅6.25W,单线程的运算能力仅为目前处理器的1/3,但它拥有4个线程,并且是16向量的FPU浮点运算单元。Intel还为此种架构设计了可以动态为各个核心分配的大容量缓存。
  一位FPGA公司的亚太区行销董事对我感叹道,从目前的应用需求看,半导体技术过剩了,CPU和GPU的创新从芯片设计向应用设计转移,其实都是在寻找新的增长点。我同意这个说法。也许这是一个不容易说清楚的事情,变化还在继续,或者说刚刚开始。对GPU来说,进入通用计算领域是锦上添花的业务,而对于CPU来说则是出现了令人不安的状况。AMD收购了ATi,计划在2009年推出内建GPU核心的Fusion处理器,而Intel也正忙着推出整合GPU的Nehalem。如果NVIDIA开始强调自己是计算而非图形芯片供应商,那么有人认定GPGPU是站在CPU门口的野蛮人也就不足为奇了。
hschun 该用户已被删除
2#
发表于 2009-8-10 23:20 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

3#
发表于 2009-8-10 23:29 | 只看该作者
不懂技术,只观后效~
回复 支持 反对

使用道具 举报

4#
发表于 2009-8-11 00:54 | 只看该作者
CPU挤个gpu 换cpu都要换驱动  散热也是问题 完全是强买强卖 还是喜欢低功耗u+集成显卡的主板
回复 支持 反对

使用道具 举报

5#
发表于 2009-8-11 02:03 | 只看该作者
不出我所料……横向的概念设计终于酝酿出纵向的概念设计了……
回复 支持 反对

使用道具 举报

6#
发表于 2009-8-11 06:45 | 只看该作者
CPU挤个gpu 换cpu都要换驱动  散热也是问题 完全是强买强卖 还是喜欢低功耗u+集成显卡的主板
Readon 发表于 2009-8-11 00:54



现在就是提倡业务专用定制,在这个云计算的时代,如果你只是跑文档,上上网,那连X86都用不上直接用个功耗几百毫瓦的ARM就可以了

这是不是能证明X86cpu太热太费电了呢?
回复 支持 反对

使用道具 举报

7#
 楼主| 发表于 2009-8-11 10:23 | 只看该作者
现在就是提倡业务专用定制,在这个云计算的时代,如果你只是跑文档,上上网,那连X86都用不上直接用个功耗几百毫瓦的ARM就可以了

这是不是能证明X86cpu太热太费电了呢?
66666 发表于 2009-8-11 06:45


云计算时代还没来到,我也不看好这种方式
回复 支持 反对

使用道具 举报

8#
发表于 2009-8-11 10:39 | 只看该作者
云计算时代还没来到,我也不看好这种方式
iverlin 发表于 2009-8-11 10:23



你不喜欢不代表云计算无法成为主流,其实现在咱们使用的不少软件如UCWEB,杀毒软件等都用上了云计算

未来应用转向云计算,WEB化是不可逆转的趋势
回复 支持 反对

使用道具 举报

9#
 楼主| 发表于 2009-8-11 10:48 | 只看该作者
你不喜欢不代表云计算无法成为主流,其实现在咱们使用的不少软件如UCWEB,杀毒软件等都用上了云计算

未来应用转向云计算,WEB化是不可逆转的趋势
66666 发表于 2009-8-11 10:39

晕 那不是计算啊,那是信息交互,查杀病毒~类似于远程执行,
云计算是什么我举个例子,就是你玩游戏,你不用高配置,通过足够的网络带宽,将数据上传到云计算机终端,让云终端给你运行,再反馈游戏画面给你。

要实现云时代,还是满遥远的~
回复 支持 反对

使用道具 举报

10#
发表于 2009-8-11 11:08 | 只看该作者
你所说的只是云计算的一种形态而已,而杀毒软件所使用的云计算平台更类似网格运算,通过网状的大量客户端对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,推送到服务端进行自动分析和处理,然后再把病毒和木马的解决方案分发到每一个客户端。微软免费杀毒软件Morro也是使用类似技术
回复 支持 反对

使用道具 举报

11#
发表于 2009-8-11 11:10 | 只看该作者
最后一段才是重点

性能过剩了。。。
回复 支持 反对

使用道具 举报

12#
 楼主| 发表于 2009-8-11 11:11 | 只看该作者
你所说的只是云计算的一种形态而已,而杀毒软件所使用的云计算平台更类似网格运算,通过网状的大量客户端对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,推送到服务端进行自动分析和处理,然后 ...
66666 发表于 2009-8-11 11:08


云查杀不是是云的范畴,但不是“云计算”的范畴,兄弟去查一下云计算
蜗牛不是牛~
回复 支持 反对

使用道具 举报

gump-chan 该用户已被删除
13#
发表于 2009-8-11 15:27 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

14#
发表于 2009-8-11 16:07 | 只看该作者
CPU挤个gpu 换cpu都要换驱动  散热也是问题 完全是强买强卖 还是喜欢低功耗u+集成显卡的主板
Readon 发表于 2009-8-11 00:54

据说是通过指令集实现GPU集成的
回复 支持 反对

使用道具 举报

15#
发表于 2009-8-11 18:13 | 只看该作者
理论 到实践还有很长的路
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

广告投放或合作|网站地图|处罚通告|

GMT+8, 2025-8-27 05:37

Powered by Discuz! X3.4

© 2001-2017 POPPUR.

快速回复 返回顶部 返回列表