渲染农场
关于Renderfarm
Renderfarm(渲染农场)其实是一种通俗的叫法,实际上我们应该叫他“分布式并行集群计算系统”,这是一种利用现成的CPU、以太网和操作系统构建的超级计算机,它使用主流的商业计算机硬件设备达到或接近超级计算机的计算能力。
集群(cluster)指的是一组计算机通过通信协议连接在一起的计算机群,它们能够将工作负载从一个超载的计算机迁移到集群中的其他计算机上,这一特性称为负载均衡(load balancing),它的目标是使用主流的硬件设备组成网格计算能力,达到、甚至超过天价的超级计算机的计算性能。
典型的超级计算机生产厂商包括IBM、SGI,以及其他一些大学、科研组织,以IBM Blue Pacific超级计算机为例,它拥有5800 个处理器来计算核反应的物理模拟过程,这样的计算机价格对于绝大部分商业用户是很难承受的,而且要面临很多的技术和维护问题,并且换代成本也很高,升级能力差。因此,发展了利用通信技术连接其他计算机,组成一个网格计算系统,可以分配负载的工作给其他计算机的CPU进行处理的解决方法来模拟超级计算机的能力。目前很多超级计算机也是通过集群技术得到的,特别是近年,名列世界Top500的超级计算机多数指集群系统,集群计算已经是比较成熟技术,但它仍在继续发展着。
昂贵的SGI Altix超级计算机
目前的集群技术绝大多数都具有负载平衡的特性,他们主要应用与科学计算,包括航天航空、石油、科研、网络等行业,这种技术应用于电影电视、CG行业时,因为主要用来解决长时间的图像渲染问题,所以被称为“Renderfarm(渲染农场)”,最近的几部大片的制作都依赖Renderfarm系统来进行快速渲染,比如Weta制作的《魔戒》,如果没有Renderfarm(渲染农场)平台,而是使用高性能计算机的话,我们不知需要多少年以后才能看到这部电影,或者导演根本就不可能考虑制作这样视觉效果的电影。
负载均衡的工作原理
分布式并行计算分为空间上的并行和奔渖系牟⑿小?span href="tag.php?name=%BF%D5%BC%E4" onclick="tagshow(event)" class="t_tag">空间上的并行是指用多个?砥鞑⒎⒌闹葱屑扑悖 热镗entalray渲染器就支持单帧画面分割渲染,时间上的并行就是指流水线技术,比如使用强氧Renderfarm提交渲染电影序列。现在的集群计算系统的前沿科学研究主要是空间并行方面的,时间上的流式并行计算已经得到广泛应用。
以电影制作为例,一段电影图像序列需要很长时间的渲染,(通常2K分辨率所需要的渲染时间能被大家接受的大概是在每帧1小时左右),管理节点将序列图像分割为若干单元通过Web分配给其他节点,这个过程是动态的,集群软件会检查每个节点的当前负载,如果某个计算节点硬件配置比较高,很快完成了第一次分配的渲染工作,那么管理节点继续会将剩余工作分割为若干单元然后再发送给这个已完成渲染的空闲计算节点,直到渲染工作完成。目前用于CG渲染的商业RenderFarm软件的核心功能其实就是动态分配渲染进程、网络监控和数据管理。
负载均衡系统使计算负载可以在计算机集群中尽可能平均分摊处理。负载一般是需要应用程序处理,这样的系统适合于运行同一组应用程序的大量用户,比如用于Maya渲染的工作组,每个节点都可以处理一部分工作,并且可以在集群节点之间动态分配负载,以实现平衡。
集群计算管理需要涉及网络流量和流量管理。负载均衡应用服务要求集群软件检查每个节点的当前负载,并确定哪些节点可以接受新的作业,这最适合运行如数据分析等串行和批处理作业,所以很容易允许具有批渲染能力的应用软件加载集群功能,一些集群软件被开发出来,它们通过TCP/IP 进行流量管理,并且针对特定的应用程序的API或Script接口编写批处理命令,如Muster,并且这些集群软件还可以配置成关注某特定节点的硬件或操作系统功能(受应用软件制约),这样,群集中的节点就没有必要是一致的,硬件和系统异构也就很容易实现。
实现负载均衡的方式可以分为软件负载均衡和硬件负载均衡两种方式,由于硬件负载均衡的实现非常昂贵,很多集群系统都采用了软件负载均衡,强氧集群系统就是使用软件均衡。
并行计算的问题
并行原理是将整个数据分割成N个模块分配给N个CPU计算,在每一个CPU中启动计算进程,由主进程调度各CPU的计算。
并行集群计算有一个效率发挥的问题,理论上CPU数量和渲染时间与实际会有差异,而且不同系统的实际时间也不尽相同。
理论上说CPU数量越大,渲染时间越短,它们成反比关系。例如,一个任务由N颗CPU来完成,假设1颗CPU(N = 1)完成此任务所需要的时间T为1, 则n颗CPU的效率是1颗CPU效率的N倍,也即
然而事实上,动画渲染花费的时间和CPU的数量并非成线性反比。
当计算节点到某个数量级别的时候,简单地增加CPU数量或者计算节点根本无法有效地提高渲染的效率,这时的计算方式为:
CPU个数达到一定数量后系统效率不但不增加,还有可能减少。造成这种问题的瓶颈主要在于通信(不止网络通信,还包括PC内部CPU、内存和硬盘之间的通信)和软件的算法,系统中使用多少个节点计算机(基于CPU的数量)也是需要考虑的问题。
这就需要一个拥有优秀算法的集群渲染管理软件进行调度并发挥每个CPU的效能并且使用性能优异的硬件配置。
Renderfarm特性
Renderfarm是基于软件和硬件应用的完美结合,采用基于微软Windows的Render farm,最新的网络管理方式,是用于管理复杂的和跨平台的高级3D和2D网络渲染解决方案,在渲染效率、稳定性、灵活性方面具有强有力的优势!
Renderfarm独特的“蜂群”构架消除了对集中“管理器“的需求――就像程序一样。
1)基于1U平台解决方案
在标准的42U机轨上轻松部署160颗处理器运算节点,提供业内独一无二的高性能--它带有众多创新性的选项:多核处理器、NVIDIA Quadro FX 图形处理和高性能千兆以太网。
2)强劲的处理器支持
支持最新的双核心处理器,在1U平台上集成四颗物理核心处理器,提供超过普通双处理器平台双倍的运算效率!
3)64位系统构架
采用64位系统架构,良好兼容32位运算,平滑过渡到64位系统!
4)友善的用户界面
针对广大用户的反馈,Renderfarm对自身做出了相应的改进:没有了缓慢的页面、晦涩难懂的术语和运行怪异的多平台用户界面窗口部件,取而代之的是一个单一完整的Monitor用户界面。
5)对当前各种渲染包的完美支持
除了能够支持所有标准命令行渲染工具,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
6)多个工作时间表选项
数字显示的工作优先级、机器资源、指定的并发事件限制群以及特定工作黑名单使您既可以处理有限证件插件和渲染包,也能够准确地在多部门间控制渲染资源的分配。
7)管理和审查
管理特性可选择密码保护。任何对工作、任务及从属项目更改都可被记录并跟踪。
整合的远程管理功能,如:设备统计报告(CPU、磁盘空间、存储器、操作系统及修补包)、远程启动/停止/重启从属程序和设备、在远程设备上执行任意命令行。
远程错误报告直接向Frantic Films Software报告渲染错误和一般应用程序错误可以缩短停工期并加快问题的解决。
9)良好的系统兼容性
Renderfarm可以良好的运行于Microsoft Windows 2000,Microsoft Windows Server 2000和Microsoft Windows XP和运行在Microsoft .NET 1.1平台的顶层,他通过向一个Windows共享的文件夹读写文件实现网络渲染,没有必要在贮藏库主机上安装客户端软件。
对少于11台机器的Render farm,任意Windows 2000 或 Windows Xp机器都能作为贮藏库主机使用,而对多于11台机器的较大Render farm,推荐下面任意一种配置:
Microsoft Windows 2000 Server,
Microsoft Windows 2000 Advanced Server,
Microsoft Windows 2003 Server
如果没有从微软另购买用户访问证件,标准配置的Microsoft Windows 2000 和Windows XP不允许多于10个接入连接。
大场景可视化应用越来越广,intel最新推出D5400XS主板,该主板将45纳米酷睿技术,nvidia的SLI技术,FBD800高速内存,eSATA高速阵列,静音等最新技术融为一体,广泛用于海量数据处理可视化,动画渲染,虚拟现实仿真,视频处理,该配置适合工程设计研究室,个人工作室,做到真正高速运算静音工作完美地步。
说到渲染农场就离不开渲染农场的管理软件,下面将目前市面上比较常见的农场管理软件做个对比。
厂商
软件结构
运行平台
任务调度效率
计算速度
缩略图
单帧图像分割
语言
容错性
Enfuzion
美国Axceleon Inc.
网格计算
所有的32位、64位Windows, OSX,Linux,Unix
线性
优秀
有
有
英文
好
Qube
PipelineFX
基于MySQL数据库
32位、64位Windows, Linux, OSX
线性
优秀
无
无
英文
有错误
Muster
Virtual Vertex
点对点技术
Windows,Linux;服务器必须是Windows
差,节点超过50性能低下
差
无
有
英文
有错误
Deadline
Frantic Film
基于.NET技术
只支持Windows
差
差
无
无
英文
有错误
炫我渲染管理软件
北京炫我科技
网格计算
所有32位,64位Windows, Linux
线性
优秀
有
有
中文
好