滚动新闻:
首页 > 解决方案 > 渲染与计算

坤成基业Renderfarm解决方案

  一、 渲染农场和集群的概念与原理

  Renderfarm(渲染农场)是实现专业规模化集群渲染等工作的环境,实际上规范的名称应该是“分布式并行集群计算系统”,这是一种利用浮点运算性能强劲的多核处理器(CPU/GPU)、以太网和操作系统构建的超级计算机,它使用主流的商业计算机硬件设备达到或接近超级计算机的计算能力。

  集群(cluster)指的是一组计算机通过通信协议连接在一起的计算机群,它们能够将工作负载从一个超载的计算机迁移到集群中的其他计算机上,这一特性称为负载均衡(load balancing),它的目标是使用主流的硬件设备组成网格计算能力,达到甚至超过天价的超级计算机的计算性能。因此,发展了利用通信技术连接其他计算机,组成一个网格计算系统,可以分配负载的工作给其他计算机的CPU进行处理的解决方法来模拟超级计算机的能力。目前很多超级计算机也是通过集群技术得到的,特别是近年,名列世界Top500的超级计算机多数指集群系统,集群计算已经是比较成熟技术,但它仍在继续发展着。

  二、渲染农场特性

  渲染农场可采用基于微软Windows的渲染农场,也可采用Unix核心的操作系统,是基于软件和硬件应用的完美结合,利用现行的网络管理方式,制定和管理复杂的和跨平台的高级3D和2D网络渲染解决方案。其特性如下:

  1)高性能

  2)良好的兼容性

  3)良好的用户界面

  4)对当前各种渲染包的良好支持

  除了能够支持所有标准命令行渲染工具,Renderfarm带有针对Maya,3ds max,Digital Fusion, Lightwave, Softimage XSI 和AfterEffects等软件的自定义编写窗口,通过专门的应用软件脚本或者插件,以实现高效率及可配置性。广泛的应用程序支持包括:

  3dsmax After Effects

  Combustion Digital Fusion

  Gelato Lightwave

  Maya Shake

  Softimage XSI

  基于RIB渲染引擎的3Delight、AIR、BMRT、Entropy、PRMan、Pixie、RenderDotC

  脚本和C++SDK插件

  支持渲染引擎的脚本,SDK提供强大灵活的特性。

  整合RPManager

  5)多个工作时间表选项

  6)管理和审查

  三、 渲染农场的分类

  按照任务管理类型,主要可以分为以下两种类型:

  1)SMP(symmetric multiprocessing 对称多处理)类型的渲染农场就是一个操作系统控制多个计算机硬件。

  2)MPP (massively parallel processing ,大规模并行处理)类型的渲染农场就是每个CPU都拥有自己的操作系统,然后用渲染管理软件通过网络统一管理硬件资源。

  四、渲染农场的组成

  1、渲染管理软件

  1)渲染管理软件的作用:

  渲染任务管理软件可以从图形工作站上向各个节点的机器分配渲染任务,以使所有的客户端工作站对指定的部分进行渲染。

  2)渲染管理软件的种类:

  经过调查,目前市场的集群渲染管理软件有好几个,比如说欧雷公司(www.ou-lei.com)的Ultra Render,还有多平台网络渲染管理系统deadline、Pipelinefx公司(www.pipelinefx.com)开发qube!等等主流集群渲染管理软件,此外还有Platform LSF(从SGI移植的渲染管理软件)、Enfuzion(交叉平台的渲染管理软件)、Rush、Binary Alchemy Royal Render等等。一般渲染管理软件都会支持主流的三维软件(如maya、softimage、3ds max、Shake、Nuke、mental ray等等),并且提供开放的API结构。

  3)操作系统

  Linux是做集群服务器的最佳操作系统,其稳定性和速度都比Windows更优秀,但是问题也是存在的。如果你是Maya为主要Pipeline的公司,选择Linux会有很多好处,包括比Windows快1倍以上的网络访问速度,几乎没有病毒烦恼等;如果你是3dmax或者是3DMAX和MAYA的混合使用环境,那么就只能选择Windows了。为了节约成本,可以在分发管理服务器安装Windows服务器版本,为渲染服务器安装OEM的Windows XP。

  4)渲染软件

  一般的渲染农场配置都支持常见的主流渲染软件,如Maya、3dmax、XSL、mental ray、Renderman和V-Ray等。

  2、渲染服务器

  也叫做渲染节点,渲染节点是整个集群系统的计算核心,他的功能就是执行渲染,具体选择什么样的硬件配置,需要根据自己的需求和预算来决定。初期,可以购买小型系统来实现,比如5个节点;添加工作站,让其在闲暇的时候加入渲染,可以根据公司的日后的发展需要扩展规模,可以扩大到几十甚至上百个节点系统。主流的制作公司都会选择1U服务器,布置2颗处理器如果现在配制,会是双核处理器,配上大容量内存。但也有很多公司会选择刀片服务器,刀片服务器,刀片服务器在企业级别的应用中有很不错的优势,如节省布置空间、方便连接、方便管理等

  2.1) GPU渲染节点 在异构协同处理计算模型中将CPU与GPU结合起来加以利用。 应用程序的串行部分在CPU上运行,而计算任务繁重的部分则由GPU来加速。 从用户的角度来看,应用程序只是运行得更快了。因为应用程序利用了GPU的高性能来提升性能。

  3、分发服务器/文件服务器

  单个渲染节点再强劲,没有好的管理,同样会造成非常大的浪费。不要以为现在的渲染管理就是简单的调用命令进行渲染器而已,真正经受过制作考验的渲染管理方案都有着严禁的架构设计,关键的技术指标不同,方案之间就差别非常大。

  可以说,硬件的选型与搭建仅仅完成了我们工作的20%,你还需要花50%的精力对渲染投资进行规划。

  渲染管理和任务分发服务器主要承担两种任务,提供基本的网络服务,调度渲染服务器上的任务,分发软件如果安装渲染引擎,也可以假如渲染队列,但是实际上我们需要安装集群渲染管理软件。

  集群系统需要连接海量存储以保存渲染出来的电影序列,渲染一小时的高清序列大概需要1TB左右的存储上。当所有的渲染服务器同时向中央存储写入数据的时候,网络规划成为衡量集群系统最终性能的标尺,中央存储访问技术可以选择:

  1) NAS,使用NFS、Samba等协议;

  2) Direct Attached SAN, 需要使用SAN管理软件;

  3)IP SCSI。

  采用光纤通道存储系统,可为直连环境、小型集群及入门级和中档SAN环境提供性价比最佳的特性,具备最大传输率。中央存储是一个可扩展的高性能存储系统,它降低了部署SAN的复杂性、费用及风险,其模块化的设计允许您按照需要来增加存储容量。

  4、网络交换机、服务器机柜、KVM(多计算机切换器)等周边附件

  集群计算的进程迁移需要高速硬件连接设备,进行计算机之间的数据传输,可选的设备包括千兆网卡、交换机或者光纤卡以及相应的光纤交换机。对于中小型的集群系统来说,千兆的传输速率完全能够满足了。

  五、渲染农场工作流程

  在渲染农场里创建任务时,所有提交的工作被记录在一个Repository 文件夹中,其他计算节点和工作站都可以通过监视程序看到渲染进程,这些正在渲染和等待渲染的工作,在渲染农场管理程序中叫Queued(渲染队列)。

  计算节点在没有渲染的时候,会自动检测Repository 文件夹,如果找到新的渲染工作,会将这个Queued(队列)自动Active(激活),然后开始渲染

  用户可以在渲染的时候通过渲染农场监视器对渲染进程进行管理,比如停止一个渲染工作,以及激活工作继续渲染等等。

  渲染完成以后,有时渲染得到的结果并不满意,可以Requeue Task(重排任务),让完成的工作重新渲染

  渲染任务最终完成以后,队列就可以Archive(存档),存档的工作将不能被修改,以便检索和提交报告

  渲染农场的工作流程非常简单,任务的提交和管理也非常方便,特别是为应用软件提供的插件和脚本,用户直接可在Maya、3ds max等应用

  软件内部提交渲染任务,避免由于一些复杂设置导致的问题,渲染农场在三维动画和影视特效制作行业具有很高的可用性,是管理复杂三维和二维网络渲染的优秀解决方案之一。

  渲染农场工作流程图

  为满足目前客户日益增加的渲染服务需求,国内有些企业已经搭建成功了一些性能强劲的渲染农场,为客户随时提供渲染服务,例如上海CG渲染农场公共平台,按渲染时间来收取一定的费用,这些企业的服务流程大致如下: