网络环境下集群渲染技术综述

2009-8-26 作者: 王永滨 石民勇 洪志国 来源: 万方数据

关键字: 渲染 三维集群渲染平台 集群 作业管理 

介绍了渲染技术经历的基于CPU的渲染、基于GPU的渲染、网络渲染和三维集群渲染等阶段,详述了三维集群渲染平台,分析了其工作流程、构建原则、作业管理和渲染管理软件等,并进一步研究了三维集群渲染平台的国内外研究与应用现状,最后对网络环境下集群渲染技术的发展趋势进行了分析与展望.

  1、引言

  渲染(Rendering)是一种计算机图形生成技术,首先在计算机内建立所需场景的几何模型,并附上一定的材质、纹理及色彩,再加上光源、根据一定的光照条件,计算并生成具有真实感效果的场景图形.渲染是基于一套完整的程序计算出来的,硬件对它的影响只是一个速度问题,而不会改变渲染的结果,影响结果的是看它是基于什么程序渲染的。

  渲染又有实时和非实时之分.实时渲染是即时计算出来的,包括游戏画面等;而电影、CG动画和片头等影视动漫作品都是非实时的,它是事先渲染成动画序列,而后再以一定的速率播放形成动画或视频的。

  2、渲染技术的发展历程

  在较大规模的动画制作项目过程中,特别是三维动画和电影节目的制作,由于复杂的场景和特效,着色渲染需要大量的时间渲染速度过慢成为了影视特特效和动漫制作的瓶颈.因此,不断提高渲染速度是影视和动漫等创作过程中追求的目标.渲染技术的发展依次经历了如下4个阶段.

  2.1基于CPU的渲染

  以4K分辨率进行渲染为例,假设每帧渲染耗费1小时,1分钟动画(60s X 24(rames/s)需要60天来进行渲染,1部120分钟的影片需要20年的时间来完成渲染工作[fzl.在时效性上远不符合影视创作和动漫制作的要求,急需能快速处理图像的处理器GPU(Graphic Processing Unit)来提升渲染速度.

  2.2基于GPU的渲染

  GPU自1999年首先由nVidia公司提出来后,其发展的速度是CPU更迭速度的3倍多.GPU的运算速度比CPU要快,主要是由于GPU是为图形实时渲染而量身定制的,具有超长流水线和并行计算的优势L3}.因此,采用GPU方式的渲染在速率上有一定的提高.

  2.3网络渲染

  在网络环境下,由于网络节点的独立CPU和GPU渲染能力十分有限,因此采用网络渲染可充分发挥网络资源优势、利用渲染节点的计算能力来进一步提升渲染效率.文献〔4〕中利用了Muster渲染管理软件,使用5台PC机对3D max场景文件进行了网络渲染,取得了较高的渲染加速比值.

  2.4三维集群渲染平台

  2.4.1渲染工作流程

  所谓三维集群渲染平台(Render Farm)是利用集群计算机的优势,通过网络分发软件和并行3D渲染软件,充分利用集群网络中的计算机硬件资源,将复杂的3D场景通过大量计算,生成预览图像或最终动画图像,以供效果调整审定或后期制作合成之用[JsJ.整个过程是自动化和智能化的,它代表了制作技术的发展方向

  以惠普公司为迪斯尼构建的集群渲染系统为例,该系统名列 2004年世界500强超级计算机第57位,在电影制作公司是第1位,它采用900颗Intel Xeon 3.06 GHz处理器,使用了HPC集群技术,Platform LSF以及EnFuzion管理软件,该集群渲系统渲染1分钟电影序列只需要不到1天的时问[[6J

  一个典型的网络集群渲染工作流程如图1所示,由图可见,典型的网络集群渲染平台包括客户端、诸如交换机等网络设备、集群渲染节点以及管理和数据存储中心.从物理连接方式上看,客户端、集群渲染节点以及管理和数据存储中心之间均通过交换机进行数据传输和通信.图1中所示的箭头表示场景文件、作业和图片等的传递方向.

  2.4.2集群渲染系统的构建原则

  一个典型的集群渲染系统应具备如下条件:

  (1)由多台PC组成,代替工作站来完成渲染工作,充分利用所有硬件和人力资源;

  (2)具备完善的、便于任务调配的管理系统;

  (3)具备有优秀的算法,充分发挥每个渲染节点的作用,能够大幅度地提高渲染速度;

  (4)具备快速的传输设备,以保证动画制作过程中大量的数据传输.

  相应地,在设计和构建集群渲染系统时应该重点考虑的主要问题包括效率发挥、集群渲染管理软件的选取、渲染器的选择、通信和存储等.

  2.4.3集群渲染系统作业管理和渲染管理软件

  在集群渲染过程中,某一时刻,各个节点的负载可能极不平衡.因此,对集群系统节点进行负载平衡也就成为任务分配与调度的主要目标,也是负载平衡集群系统的核心工作,它对于能够提高整个系统的性能至关重要.实现负载均衡的相关技术有调度算法、负载评价、系统监控以及反馈与修正.在大多数情况下,作业调度策略是实现负载均衡的关键Lel.调度算法具有很强的针对性,由于应用和环境不同所导致的性能差异较大卜调度策略要考虑的主要问题包括公平性、资源利用率、响应时间、周转时间和吞吐率等。

  如图1所示,渲染管理软件作为管理服务器的重要应用软件,在网络集群渲染过程中起到了关键的管理、调度、分配和协调作用.典型的2款渲染管理软件是美国Pixar公司的Alfred}9}和Virtual Vertex公司的Muster.




责任编辑:熊东旭