1、艺美堂数字影视机构关于渲染农场调查渲染农场,从诞生起就是跟“大”联系在一起的。大项目,大团队,大集群,随着渲染农场诞生,其关键词就是 大!超级大!但是由于客户对 CG 的品质要求提升得越来越快,所以一定品质的 CG画面都需要大量的时间进行渲染。著名的摩尔定律至今仍然在发挥着作用,他预言每 18 个月硬件性能能提高一倍。以前只有好莱坞大型制作公司才能支付得起的渲染农场,现在对于 1040 人左右的团队也可以通过细心规划和设计来搭建可以满足自己需求的渲染农场了。(一)渲染农场概况在影视动画行业,我们称 Cluster(集群)为“Render farm”。很多网络管理技术人员喜欢称“集群计算系统”,
2、而业内人士更愿意叫他“渲染农场” 很形象,也很人性化的感觉。要了解三维动画集群渲染系统,我们就要提高到运用超级计算机:集群计算机可以指称所有高性能计算机,它分为两种:1) SMP(symmetric multiprocessing 对称多处理),计算机的 1/0 总裁、多处理器、内存等所有的控制都运行在一个操作系统中(通常为 Unix 或 Linux),可以对单位任务进行最高性能计算机只能由1BM、SGI 提供,而现在 AMD 的 8 路 CPU 的方案,使得很多硬件厂商都能提供这样的超级计算机了。2) MPP (massively parallel processing ,大规模并行处理):
3、每个处理器都有属于自己的操作系统,通过某种通信协议连接这些操作系统,从而可以同时处理同一程序的不同部分。MPP 方式一般都使用通用的计算机,具有较高性价比,但是系统也变得更为复杂。通过自己的协议或者通信接口来使 CPU彼此连接,这需要照顾到系统资源以及任务分配等很多问题,特别是网络性能。国内的典型用户有中央电视台、华龙等公司。他们将 80150 颗 CPU 的服务器连接起来渲染动画或者特效镜头。在集群系统中,所有提交和管理的工作可以在图形工作站或者 PC 上完成,并且可以监视整个渲染进程。这些正在渲染和等待渲染的工作,在集群渲染管理软件中叫 Queud(渲染队列)。渲染任务的提交过程是动态的。
4、集群渲染系统的管理软件会检查每个节点的当前工作状态:如果某个计算服务器硬件配置比较高,很快完成了第一次分配的渲染农场工作,那么集群管理软件继续会将剩余工作分割为若干单元,然后再发送给这个已经完成渲染的空闲计算节点,直到渲染工作完成。集群系统按照功能来进行分类,可以分为以下 4 类:渲染节点:渲染节点是整个集群系统的计算核心,他的功能就是执行渲染,具体选择什么样的硬件配置,需要根据自己的需求和预算来决定。初期,可以购买小型系统来实现,比如 5 个节点;添加工作站,让其在闲暇的时候加入渲染,可以根据公司的日后的发展需要扩展规模,可以扩大到几十甚至上百个节点系统。主流的制作公司都会选择 1U 服务器
5、,布置 2 颗处理器如果现在配制,会是双核处理器,配上 12GB 内存。但也有很多公司会选择刀片服务器,刀片服务器,刀片服务器在企业级别的应用中有很不错的优势,如节省布置空间、方便连接、方便管理等。主要考虑的问题包括以下几个方面;CPU 架构灵活一般的情况下,集群系统都是很灵活的,允许不同的服务器、工作站乃至办公用机,灵活加入渲染队列,但这样的环境也意味着某些潜藏的未知风险。北京天文馆是一个特例:他们制作的项目包括了大量流体,计算非常复杂,普通的双处理器服务器甚至不能渲染出结果。他们根据自己的特殊情况,选择了 8路处理器的高性能计算机来做渲染服务器。其中,特别是 AMD 和 INTEL 平台的
6、混用容易出现问题。在渲染同一任务的时候,AMD 平台和 Intel平台渲染出来的同意画片,其色彩亮度和饱和度会出现不一致的情况。而且,由于混合渲染的方式,渲染结果都混合在了一起组成电影序列,所以很难在后期进行整理,出现这样的情况就只能重新渲染了。解决的方法需要注意两点;1)规划的时候,统一平台,避免关键硬件设备混合不同型号、不同厂家 2)如果一定要使用混合平台,就有必要进行分组,一个组渲染一个任务。操作系统自主选择Linux 是做集群服务器的最佳操作系统,其稳定性和速度都比 Windows 更优秀,但是问题也是存在的。如果你是 Maya 为主要 Pipeline(是指流水线作业, 一般是将一个
7、复杂费时的任务划分成大致相等的几个小的步骤, 以提高处理连续任务的速度和最优使用资源的目的.)的公司,选择 Linux 会有很多好处,包括比 Windows 快 1 倍以上的网络访问速度,几乎没有病毒烦恼等;如果你是 3dmax 或者是 3DMAX 和MAYA 的混合使用环境,那么就只能选择 Windows 了。为了节约成本,可以在分发管理服务器安装 Windows 服务器版本,为渲染服务器安装 OEM 的Windows xp。渲染管理和任务分发服务器单个渲染节点再强劲,没有好的管理,同样会造成非常大的浪费。不要以为现在的渲染管理就是简单的调用命令进行渲染器而已,真正经受过制作考验的渲染管理方
8、案都有着严禁的架构设计,关键的技术指标不同,方案之间就差别非常大。可以说,硬件的选型与搭建仅仅完成了我们工作的 20%,你还需要花50%的精力对渲染投资进行规划。渲染管理和任务分发服务器主要承担两种任务,提供基本的网络服务,调度渲染服务器上的任务,分发软件如果安装渲染引擎,也可以假如渲染队列,但是实际上我们需要安装集群渲染管理软件。网络和存储集群系统需要连接海量存储以保存渲染出来的电影序列,渲染一小时的高清序列大概需要 1TB 左右的存储上。当所有的渲染服务器同时向中央存储写入数据的时候,网络规划成为衡量集群系统最终性能的标尺,中央存储访问技术可以选择:a) NAS,使用 NFS、Samba
9、等协议;b) Direct Attached SAN, 需要使用 SAN 管理软件;c) IP SCSI。Digital Weta 的集群系统是一个典型的不太成功的案例。他们的 CPU 数量远远多于梦工厂和迪斯尼,整体硬件配置也比他们更新一代,但是在超级计算机 500 强的排名中远远落后这两家。原因就是他们在整体规划的时候没有作好,网络出现了瓶颈。所以,并不是CPU 越多,集群系统就会越强大。通信性能我们可以简单的把集群渲染管理软件分为高端和低端两种。高端的管理和任务分发服务器由于其优秀的算法,可以让系统能够接近线性的性能提高,而低端管理软件在达到一定规模以后,会影响任务调度的性能。以中小型团
10、队常用的 Muster 为例,他在达到 2540 个节点以后,性能会明显下降,甚至渲染的时候会丢失数据。集群计算有一个效率发挥的问题,理论上 CPU 的数量和渲染时间与实际情况会有差别而且不同系统所用的实际时间也不尽相同。CPU 数量越大,渲染时间越短,他们成反比关系。但事实上,动画渲染花费的时间和 CPU 的数量并非成线形反比。问题的瓶颈主要在于通信(不止网络通信,还包括 PC 内部 CPU、内存和硬盘之间的通信)和软件的算法;系统中使用多少个节点计算机(基于 CPU 的数量)也是需要考虑的问题。这就需要一个拥有优秀算法的集群渲染管理软件进行调度,并发挥每个 CPU 的效能,使用性能优异的硬
11、件配置。渲染农场的渲染节点是整个集群系统的计算核心,选择什么样的渲染引擎则要根据各个制作公司的 流程来决定的。比如独立的 mental ray standalone 渲染器、应用程序提供的免费渲染接口。如 3dmax 扫描线渲染器和 Maya 内置渲染器。还有一些插件等。不同的工作流程决定了渲染引擎的多种搭配方案。为 3dmax Max 搭建集群系统情况很少,3dmax Max 用户主要集中在建筑动画和视景仿真领域。而这些行业主要对静帧图像质量又较高要求,对与序列图像的精度要求却很低。及时一些公司的业务很忙。需熬渲染农场提高效率,3dmax Max 自带的 backburner Manager
12、 足可解决问题。backburner Manager 无法让 3dmax Max 6 及其插件在同一台渲染服务器并存,他只能让 3dmax Max 9 去渲染所有的场景,但是很多插件并不支持高版本。Enfuzion 和 Deadline 等管理软件可以解决这个问题。Frantic Film 开发的 Deadline 将 3dmax 作为主要的工具完全整合了著名的 Render pass Manager管理软件。对 3dmax 以及各种插件有着较好的支持。又 Reference 导致的问题能够在 Deadline 得到讲稿,并且通过忽略错误的命令,让场景继续渲染下去。在国内,以 Maya 为主要
13、工具的制作公司主要使用 Maya 内置渲染器和 mental ray 渲染器。很少使用 Render man 作为渲染引擎的。在实际的使用中,mental ray for Maya 的问题成为衡量集群渲染管理软件优劣的焦点了。国内使用 Muster 的大小公司实际有不少,中视远图是极少数使用 Muster 正版软件的公司之一。他们在工作站上使用 Maya 制作特效,然后使用 Combustion 合成。购置一台千兆交换机,并且配有一台服务器作为分发管理,连接闲暇的图形工作站,让渲染组能够在较好的网络环境下运行。这是一种典型的小型制作公司的渲染农场,成本低而且非常有效。在使用 Muster 和
14、Dealine 的某些版本对 mental ray 场景进行任务分发的时候,会出现下述情况:(1) 渲染第一个任务以后服务器停止渲染:(2) 重启服务器开始渲染,完成第一个任务后,又停止渲染:(3) 这里的停止渲染指不停地队列渲染,但是没有渲染结果:(4) 网络中只有一台渲染服务器正常工作(5) 日志报告不能找到错误原因(6) Deadline 报告找不到 License.出现这一问题在于任务提交的模板错误,最后将软件替换成 Enfuzion 以后。没有再出现类似问题。混合环境的制作公司对于混合平台来说,更多要考虑到的问题主要集中在项目管理的方面,当然。为了方便管理,使用渲染分发管理软件也更有
15、必要,并且可以防止操作失误而导致单机多任务渲染的情况出现。中央电视台早在 2002 年就开始使用渲染农场,管理软件使用 Enfuzion。由于那时的 Enfuzion 与现在的 LSF 是一样的命令形式,中央电视台自己研发了图形界面,一直使用到现在。希望使用 Mental ray standalone 并不能解决所有的问题虽然目前主流三维动画染件都内置了 Mental ray 渲染器。都能输出 mi 文件,但是这个文件由于各个三维动化软件的接口不同,所以并不是通用的。比如 Maya 的 Mental ray standalone 版本和 3d max 输出的 mi 文件,不能给 3d max
16、或者 XSL 的Mental ray standalone 使用。TIP对于渲染农场的搭建,技术难度并不在硬件设备的挑选上,而是整体工作流程的科学规划。检验集群渲染软件的技术的技术指标主要有以下几点:1、 能否保证渲染引擎能够正常调用?2、 在相同硬件和网络平台下,提交任务的速度和性能如何?3、 能否保证渲染过程不丢失数据:4、 单机拓机,是否影响整体网络性能,并且修复失败渲染任务的方便性如何;5、 能否支持现有的主流三维动画和后期合成软件?6、 能否支持静祯分割渲染?7、 是否简单易用?8、 是否易于维护?其他的集群渲染管理软件如 Alfred、LSF、SPIDER、DRDUEUE、ROYA
17、LRENDER 等,在国内应用比较少。其中 SPIDER 和 DRDUEUE 是开源软件项目,对于有开发能力的制作公司来说,是可以考虑的方案。例如,上影数码曾在 SPIDER 项目上进行开发,作为自有软件使用。而 LSF 目前只是一个网格计算数据库,并没有专门对渲染农场的工具,开发难度会相对高一些。渲染农场的管理软件:Axceleon Enfuzion(新型集群技术)是国内最早建立集群渲染的管理软件,中央电视台在 Enfuzion 的内核上自己开发了中文图形界面,并且一直在使用,Enfuzion 是从小型到大型制作公司都适合的管理软件。Enfuzion 其优势1 Enfuzion 不限平台,几
18、乎支持所有的 Windows、Osx、Linux 版本,包括支持 64 位操作系统,可以为最新的 64 位的渲染系统环境,最大的获取硬件性能,2 Enfuzion 支持 tile rendering 方式,可以将一帧高分辨率的图像,分割成若干画面进行渲染,并且可以设置融合边的宽度,对于复杂计算和电影分辨率渲染尤其有效,这个功能受限于渲染引擎,可以支持 mental ray 以及 Maya 扫描线渲染器以及 Renderman .3 Enfuzion 对 mental ray 又很优秀的支持,为大规模使用 mental ray 进行渲染的时候,使用其他分发软件只是在第一次分发任务时可以渲染成功,
19、但 不能自动获取下一个任务来继续工作,要重启才行。4 图像浏览器和缩略图浏览器方便观看渲染的情况,这是 Enfuzion 最令人喜爱的独特功能,其他软件需要切换到图像浏览器里去查看渲染结果如果渲染成了 TIFF 文件就会更加麻烦,但在每个Enfuzion 提交节点里都能看到渲染出的缩略图,点击缩略图可以浏览图像,也可以播放渲染序列。PipelineFX QubePipelineFX Qube 以其高贵的出生和传奇的经历获得了最多的关注,早在 2001 年,square USA 组建了 1500 颗 CPU 的 render farm 系统,并且开发了 SQB 管理工具用于渲染动画电影最终幻想和
20、骇客帝国。随后,SQB 发行了商业版本,就是现在的 Qube。优秀的性能,它已经在最终幻想和蚂蚁雄兵、怪物史莱克等动画电影得到应用。PipelineFX Qube 其优势1. Qube 有一个多线程管理员技术(专利申请中)。目前市场上的同类产品中没有一种拥有类似于运行在 Qube 上的这一引擎,该技术被证实可将渲染时间缩短一半。2. Qube 在应用层面上完全整合了 Maya、3dmax、softimage IXSI After Effrct shake 和 Light wave3d 等软件,与各个软件开发公司建立了良好的合作关系。另外, Qube 支持大多数其他接受命令行的程序。Virtua
21、l Vertex MusterMuster 是较早拥有图形化界面进行任务分发管理的软件之一,可以说,Muster 是最先以 GUI 界面获得客户好感的管理软件,到现在 Muster 已有六年历史,最新的 5.2 版本已经拥有了一系列容易使用的功能。Muster 其优势1. 支持多平台的渲染客户端,Muster 需要使用 Windows NT/XP 作为渲染器,但可以使用 Linux和 Mac OSX 作为渲染服务器。2. Muster 支持主流的应用软件,如, Maya、3dmax、softimage IXSI 、After Effrct、 shake、mental ray.等渲染引擎。而且价
22、格较低,最小型制作公司最具性价比的选择。3. 支持 mental ray 等某些渲染器的分割渲染功能,通过几台机器分别对同一台图形进行渲染。Frantic Film DeadlineDeadline 是著名的 Frantic Films 电影特效制作公司开发的基于 Windows 的网络渲染管理系统,允许你在 Windows 上排列和分配,管理电影序列的渲染工作,提供强大高效的 3D 和 2D 网络渲染解决方案。Deadling 是在制作公司成长起来的最贴近用户的方案,其用户除了 Frantic Films 自己以外,还有著名的暴雪游戏公司,对于小型的制作公司,特别 3d max 用户来说,是
23、不错的选择。Deadline 其优势1. 支持几乎所有的渲染引擎,Deadline 包括已经定制了 Maya、3dmax、softimage IXSI 、After Effrct、 shake、mental ray.等应用提交窗口,还支持 Blender 和 Gelato。2. 支持 Real Flow 流体计算软件。3. Deadine 整合了 Render Pass Manger 管理软件,使它能够为 3D max 提供最优秀的支持。比如在同一台机器上调用多个 3D max 版本进行渲染,进行良好的用户体验。4. 工作优先权、机器 Pools、限制组、特别工作黑名单、等功能允许明确控制分配
24、了的渲染任务,管理不同部门的资源。Deadline 提供了非常详细和精确的的任务日志,不仅可以很方便的找到问题的原因,以最快的速度解决问题。而且可以为项目管理人员提供详细的工作数据。5. Deadine 支持远程控制软件,如 Realvnc 等,通过远程计算机操作维护系统。6. Deadine 新版本支持半帧分割渲染7. 节电模式DrqueueDrqueue 是一个开放源码的集群渲染管理软件,目前支持 Maya8 的任务提交,其他支持软件包括mental ray ,shake , Renderman, 以及 Blender 3D。Drqueue 有一个 Drkeewee 服务程序用来通信转递渲
25、染任务的情况,这些都可以通过 Drqman 图形界面来操作渲染任务的停止,重启,优先级别等。目前在国内外都有一些小的项目在使用 Drqueue,比如 Martian Labs,一家如加勒比海盗、驱魔人、等。Drqueue 的缺点是更新缓慢,效率一般。Drqueue 其优势:1. 免费,开放源代码 这对于很多希望自主研发的公司来说,是很有诱惑力的。2. 直接内置了 Python,可以通过 Python 脚本扩展功能。国内主流集群渲染管理软件对比Enfuzion Qube Muster Deadline厂商资历 美国 Axceleon inc 是专门从事高性能计算研究和软件开发的公司,已有 30
26、年网格计算研究 PipelineFX 是美国游戏公司 SQUARE USA 的程序开发小组于 2003 年独立出来的软件公司 Virtual Vertex 是一个在美国的小型软件开发公司,公司规模在 5 人左右,已成立 6 年 Frantic Film 是著名的电影特效制作公司,其灯光组兼软件开发任务,其软件为 Inhousu 类型的软件,商业目的不强涉及行业 金融、石油、教育、HPC、影视动画、游戏 影视动画、游戏影视特效、游戏国际合作伴Intel/AMD/IBM/HP/Autodesk/Softimage SGI/NVIDIA/IBM/Autodesk/Adobe/D2/Softimage
27、/Syflex 未知 Nvidia软件结构 专有网格计算程序,在高性能计算方面有独特的优势,网格计算效率高 基于 Mysqi 数据库 基于 P2P(点对点)技术。效率低 Mysql 日志记录,AJAX 提交 基于 NET 技术。运行平台 支持所有 32 位和 64 位 Windows,OSX 和 Linux, Unix,IRIX 支持所有发布的 Linux 版本支持所有 32 位和 64 位 Windows,OSX 和 Linux,只支持 Redhat,Suse 的某些发布版本 支持所有 32 位Windows,Linux 支持 OSX,服务器必须是 Windows(没有实际客户使用) 只支持
28、 Windows。跨平台支持 可提交不同平台的计算任务,自动路径分析转换 文件分析会出错 ,不能交叉使用 ,没有任务调度效率线性增加计算能力 线性增加计算能力 使用点对点协议,占用带宽很大,25 节点以上效率下降明显,50 节点以上可能会出现丢失数据包现象。 国内用户 中央电视台(二次开发)、北京天文馆(正在使用)、航天 512 声像中心、重庆动漫平台 大连动漫基地 未知(有小型工作室使用) 有一些工作室使用。艺美堂机构深圳市艺美堂科技有限公司 艺美堂影视动画 艺美堂高清房地产动画艺美堂数字技术事业部的核心业务是三维可视化的开发和应用服务,涉及的技术领域涵盖高清三维房地产动画,3D 动画、影视特效、互动多媒体、在线三维展示等,在房地产销售、城市规划大项目展示、城市宣传建设成果展览、设计方案汇报与演示、企业机构宣传片、工业产品广告和工业工艺与流程等方面为客户提供创新的视觉解决方案,满足不同领域、不同行业、不同场合的客户需求。