渲染农场,从诞生起就是跟“大”联系在一起的。大项目,大团队,大集群,随着渲染农场诞生,其关键词就是——— 大!超级大!但是由于客户对CG的品质要求提升得越来越快,所以一定品质的CG画面都需要大量的时间进行渲染。著名的摩尔定律至今仍然在发挥着作用,他预 言每18个月硬件性能能提高一倍。以前只有好莱坞大型制作公司才能支付得起的渲染农场,现在对于10—40人左右的团队也可以通过细心规划和设计来搭建可 以满足自己需求的渲染农场了。
(一)渲染农场概况
在影视动画行业,我们称Cluster(集群)为“Render
farm”。很多网络管理技术人员喜欢称“集群计算系统”,而业内人士更愿意叫他“渲染农场”———
很形象,也很人性化的感觉。要了解三维动画集群渲染系统,我们就要提高到运用超级计算机:集群计算机可以指称所有高性能计算机,它分为两种:
1) SMP(symmetric multiprocessing
对称多处理),计算机的1/0总裁、多处理器、内存等所有的控制都运行在一个操作系统中(通常为Unix或Linux),可以对单位任务进行最高性能计算
机只能由1BM、SGI提供,而现在AMD的8路CPU的方案,使得很多硬件厂商都能提供这样的超级计算机了。
2) MPP (massively parallel processing
,大规模并行处理):每个处理器都有属于自己的操作系统,通过某种通信协议连接这些操作系统,从而可以同时处理同一程序的不同部分。MPP方式一般都使用
通用的计算机,具有较高性价比,但是系统也变得更为复杂。通过自己的协议或者通信接口来使CPU彼此连接,这需要照顾到系统资源以及任务分配等很多问题,
特别是网络性能。
国内的典型用户有中央电视台、华龙等公司。他们将80—150颗CPU的服务器连接起来渲染动画或者特效镜头。在集群系统中,所有提交和管理的工作可以在
图形工作站或者PC上完成,并且可以监视整个渲染进程。这些正在渲染和等待渲染的工作,在集群渲染管理软件中叫Queud(渲染队列)。渲染任务的提交过
程是动态的。集群渲染系统的管理软件会检查每个节点的当前工作状态:如果某个计算服务器硬件配置比较高,很快完成了第一次分配的渲染农场工作,那么集群管
理软件继续会将剩余工作分割为若干单元,然后再发送给这个已经完成渲染的空闲计算节点,直到渲染工作完成。
集群系统按照功能来进行分类,可以分为以下4类:
渲染节点:
渲染节点是整个集群系统的计算核心,他的功能就是执行渲染,具体选择什么样的硬件配置,需要根据自己的需求和预算来决定。初期,可以购买小型系统
来实现,比如5个节点;添加工作站,让其在闲暇的时候加入渲染,可以根据公司的日后的发展需要扩展规模,可以扩大到几十甚至上百个节点系统。
主流的制作公司都会选择1U服务器,布置2颗处理器如果现在配制,会是双核处理器,配上1——2GB内存。但也有很多公司会选择刀片服务器,刀片
服务器,刀片服务器在企业级别的应用中有很不错的优势,如节省布置空间、方便连接、方便管理等。主要考虑的问题包括以下几个方面;
CPU架构灵活
一般的情况下,集群系统都是很灵活的,允许不同的服务器、工作站乃至办公用机,灵活加入渲染队列,但这样的环境也意味着某些潜藏的未知风险。北京
天文馆是一个特例:他们制作的项目包括了大量流体,计算非常复杂,普通的双处理器服务器甚至不能渲染出结果。他们根据自己的特殊情况,选择了8路处理器的
高性能计算机来做渲染服务器。
其中,特别是AMD和INTEL平台的混用容易出现问题。在渲染同一任务的时候,AMD平台和Intel平台渲染出来的同意画片,其色彩亮度和饱
和度会出现不一致的情况。而且,由于混合渲染的方式,渲染结果都混合在了一起组成电影序列,所以很难在后期进行整理,出现这样的情况就只能重新渲染了。
解决的方法需要注意两点;1)规划的时候,统一平台,