Chinaunix首页 | 论坛 | 博客
  • 博客访问: 346097
  • 博文数量: 60
  • 博客积分: 1443
  • 博客等级: 上尉
  • 技术积分: 780
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-28 16:16
文章分类
文章存档

2018年(2)

2015年(1)

2012年(1)

2011年(6)

2010年(9)

2009年(41)

我的朋友

分类:

2009-07-10 14:45:46

   很多年前,微软曾经提出过NC(Net Computer网络电脑终端机)的概念,就是一台没有CPU、内存和硬盘的“电脑主机”,用户可以通过网络,玩游戏、使用Office、处理图片、体验多媒体等Windows应用,而不需要复杂又昂贵的电脑配件。 尽管这种概念并没有流行起来,但它的思想或方式却得到了延续。在现在的电脑应用中,对性能的要求越来越高,利用云渲染可以让别人的电脑来为自己办事,这不失为一个高效而省事的“完美”方案。
一、集群式计算系统

  1.基于云计算原理

  首先需要提一下云计算,它是一种分布式并行集群式计算系统,也就是利用若干服务器中的多无数个CPU或GPU等可以计算的核心,通过互联网通信协议连接在一起构建的计算系统,它们能够将工作负载从一个超载的计算核心迁移到其他核心上,从而甚至可以达到或接近超级计算机的计算能力。分布在这个网络集群中的多台服务器共同完成一个或者多个计算任务,由控制软件将这些海量的任务分割成若干并行任务,并提交给网络上的其他的服务器,然后由网络中的几十、上百台服务器计算完成以后,存储到指定的存储空间里,再由最终用户调用。

 


很多电脑构成了云集群


  简单地讲,云计算就是由多台计算机一起处理一个任务,就像一个工厂中的很多工人一起进行加工一样。要想让每个工人都能高效地工作,必须有一个能够为工人们合理安排任务的管理领导。当很多零件交给加工厂管理人员后,他需要根据工人的能力、熟练度等因素来安排哪些工人处理哪部分工作,这样才能更有效率地完成各项工作。工人从管理人员那里接收到零件和工作任务后可以立即开始工作,完成后就把成品装箱出厂。在整个加工过程中,每个“工人”就是一个节点,那么在云计算中,被当作节点的就是服务器的CPU,而“管理人员”就是管理服务软件,目前的集群技术绝大多数都具有负载平衡的特性。


  2.GPU云渲染能力


  随着应用和技术的发展,云计算已经不是单单由CPU来完成的,当高性能的GPU出现后,云渲染、通用计算等应用同样可以看作是云计算的一种全新方式。“云渲染”就是在云计算的基础上加入图形渲染,它可以将3D图形渲染搬到了互联网上。而利用GPU的通用计算能力在网络计算方面的应用,也可以称其为利用了GPU的“渲染”能力。


  或许未来我们自己的电脑并不需要太高性能的显卡,而如大型的3D软件以及游戏放在远程的服务器中渲染或计算,在电脑上只要通过接入网络的软件就可以直接获得结果画面,而我们所要做的就是在自己电脑上发出操作命令,让远程服务器根据自己的要求执行对应的渲染任务。也就是说,我们可以在智能手机、上网本等简易设备中玩《孤岛危机》之类的硬件杀手级大型游戏。同时,由于3D游戏对配置要求越来越高,CPU已经无法完全胜任,因此让GPU来执行云渲染就显得更为适合,而且它比CPU的计算系统将更为复杂高效。


  而如NVIDIA Tesla以及AMD Fusion Render Cloud等采用GPU的系统更是在通用计算以及3D渲染方面有着更有效的性能体现,而且这类产品也拥有更大的发展趋势。


NVIDIA Tesla使用GPU作为主体计算资源

1.提高约60倍的效

  可以预见,云渲染能够应用在更多的计算领域,包括科学计算、电子工业、金融行业、生命科学、CAD/CAM制造以及影视等行业。比如在影视的CG制作方面,如《冰河世纪》、《玩具总动员》、《指环王》、《哈利波特》等纯动画或需要大量电脑特技的影片,虽然它们的播放时间不会超过两个小时,但它们的总渲染时间是很恐怖的。通常电影所需要的渲染时间大概在每帧1小时左右,而随着大分辨率高清影片品质的提高,它们的渲染时间将增多4倍,如果场景还涉及到粒子、流体等复杂计算的时候,那么渲染的速度又会成倍提高,一帧画面的渲染时间可能在10小时以上

  如果是在普通PC上,每帧渲染时间在两个小时左右,则仅仅一分钟的放映量就需要120天的渲染时间,我们不知需要多少年以后才能看到这部电影。如果将它放在由高性能GPU组建起来的集群渲染网络中,这样120天的渲染任务,分发到60台电脑上以后,两天左右就可以顺利完成工作。而且渲染并不占用制作的时间,完全可以“白天制作,晚上渲染”。有了这样的云渲染系统,用户可以用最快的时间看到作品的质量,如果需要修改也不会浪费太多的时间。

 

 

 

动画制作架构示意图
 

  2.成本支出大幅减小


  很多企业单位都拥有自己的服务器来完成大量的计算任务,特别是一些大学、科研组织甚至拥有IBM、SGI超级计算机。尽管超级计算机凭借上千个CPU确实具有强大的计算能力,但这样的计算机价格对于绝大部分企业用户是很难承受的,而且要面临很多的技术和维护问题,并且换代成本也很高,同时还会影响企业里其他项目的进行。


  如果利用云渲染,企业就不需要花费大量的资金在服务器方面。现在已经有公司提供商业计算服务,用户只要购买或租用它们的GPU服务器集群服务,只要通过网络传输就可以获得高质量的高清、渲染等计算效果。而且这样的花费不会太高,用户可以根据自己的需要(计算量)购买或租用适合自己的计算资源,使用方式十分灵活。

 

租用服务推动云渲染发

1.多节点的组成

  云渲染系统由控制系统、渲染系统、存储系统和网络交换系统组成,而每个系统又由不同的节点组成。其中控制节点主要为渲染节点提供基本的控制指令以及调度渲染节点上的工作量,通常集群的工作调度程序应该运行在这个节点上,它并不需要性能太好的配置。计算节点是整个集群系统的计算核心,它的功能就是执行计算。这需要根据需要和预算来决定采用什么样的配置,对于集群系统来说,拥有多个GPU的服务器作为渲染节点具有广泛的用户群,以及更高的性价比。

  2.算法优秀的软件

  云渲染还有一个效率发挥的问题,理论上说GPU数量越大,计算的时间越短。然而事实上,当计算节点到某个数量级别时,简单地增加GPU数量或者计算节点根本无法有效地提高渲染的效率,还有可能减少。造成这种问题的瓶颈主要在于网络速度,GPU、内存、硬盘之间的传输速度以及软件的算法。这就需要一个拥有优秀算法的管理软件进行调度以发挥每个GPU的效能,并且使用性能更好的周边硬件配置。

云计算将得到更多产业厂家以及最终用户的支持。AMD计划将Fusion Render Cloud作为云渲染服务器,并声称借助这套系统,可以在互联网上提供云渲染服务,将视频、游戏、PC应用以及其他图形画面传输给网络接入的访问终端。同时这套超级计算机还将面向电影和游戏制作行业,提高电影的交互性、缩短特效制作时间以及帮助游戏开发公司开发出效果更好的游戏来。

 

AMD展示Fusion Render Cloud,称可以用电脑甚至手机控制远程游戏渲染


 

  NVIDIA、Google、EA、微软、索尼等厂家对云渲染同样关注,下一代的服务器、游戏机以及软件都有可能作为终端,直接接入集群系统中,其中,EA、微软、索尼将在成为游戏内容的网络提供商。然而云渲染让终端PC的CPU性能显得不是那么重要,由此面向个人用户的Intel、NVIDIA以及AMD的CPU和GPU不可避免地将面临萎缩处境,这一点有点像“自掘坟墓”。因此CPU厂家在向产品多方面发展,如Intel目前积极发展自己的Larrabee并行处理器,它也将用于服务器端的云渲染应用,而云渲染对于高性能的CPU和GPU的需求仍然是十分渴望的。


小结
  不可否认,云渲染必将引发产业界的连锁反应,它将带来深远的变革,一些厂家可以从中获得广泛的商机,也有一些厂家也将因此受到严峻的冲击。而最终,它将改变人们的使用电脑的习惯,同时也将带来生产力的进化。不过作为用户,我们期待云渲染能够快速进入现实,这样我们可以摆脱对硬件设备的依赖,而更多的是去选择和消费什么样的内容服务。

阅读(1445) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~