如果家里有孩子或者您自己就是个动画迷,那么您一定花了大量时间来观看皮克斯动画工作室的电影――其中包括之前发行的《超人特工队》、《海底总动员》和最近火热上映的《汽车总动员》。然而您也许并不知道,英特尔®软件和硬件在这些大片的制作过程中发挥了至关重要的作用。
没错,就是英特尔软件。英特尔软件与解决方案事业部(SSG)负责生产各种开发工具,以帮助开发人员最大限度提升其软件产品的性能。一直以来,英特尔为开发人员提供着强有力的支持,如今公司又率先推出了更多工具,以帮助开发人员充分利用多核处理器。
包括编译器、分析工具以及全新英特尔®线程构建模块在内的全新或升级的开发工具现已推出,可支持开发人员更轻松地实现产品的多线程化。智能软件可识别可用内核的数量,从而使开发人员能够编写出可随硬件性能增长而不断扩展的代码,因此,用户和英特尔都会从中受益。
提高的软件性能、加快的上市速度和改进的产品将会令所有人受益匪浅。通过了解皮克斯动画工作室如何利用并行软件即在多个处理器上并行运行的软件,以及该公司在将其产品从并行单核处理器转换到多核环境的过程中所面临的种种挑战,可以获悉 SSG 全新软件工具的重要价值。
现代动画片是极富创造力的构想与技术执行力的完美结合
皮克斯动画工作室的电影将创意与技术完美结合,从而制作出极其逼真的动画图像。动画师们深知一点:动画细节越逼真,对于观众的吸引力便越大,票房收入也就越高。
现代动画片需要计算机具有海量的处理能力。图像越复杂意味着细节越丰富,因此就越需要大量的处理能力将其渲染到动画片中。
当创意产品就绪之后,内容便发送到运行皮克斯 RenderMan* 软件的大型计算机群――“渲染集群”上,以制作最终的动画片。皮克斯二十多年来一直从事动画电影业务,其 RenderMan 软件设计可充分发挥并行处理能力。然而该软件是为在单核服务器上进行并行处理而设计的。皮克斯的服务器空间已趋于饱合。为了继续提高处理能力,就需要采取一些其它措施。
所以我们进入了多核处理器和多线程软件世界。
多核处理器可提高固定空间中的可用处理能力
如果一台计算机的性能比您当前所用的计算机强 10 倍,您将如何使用它? |
RenderMan 开发部总监 Dana Batali 说:“最新的英特尔处理器具有更高的每瓦处理性能和多个内核,可支持我们在渲染集群中融入更多处理能力。幸运的是,采用公用存储器的两个内核几乎可以与两枚独立处理器相同的速度进行渲染,且各自拥有自己的内存。即使RAM 的成本不断增长,我们还是可通过让多个处理内核访问同一存储器来降低设备成本。“
然而,硬件仅仅是等式中的一部分。皮克斯多年来一直利用并行软件来加快渲染速度,然而该软件设计用于在并行单核处理器上运行。若想真正地充分利用多核环境,就需要重新设计 RenderMan 软件来适应多线程。
多线程可提高性能和可扩充性
创建多线程版 RenderMan 并非一项微不足道的任务,而是一次重要的过渡。多线程版 RenderMan 不但可支持双核处理器,而且以后无需再次修订即可移植到多核处理。皮克斯动画工作室选择了利用英特尔软件工具和英特尔多线程专业技术来完成这一转换。
Batali 说:“英特尔在业界的领先地位及其核心软件能力可真正加快我们的开发进程,相关工作包括关于线程概念的全面教育,以及关于英特尔软件开发工具的培训等。”
全新开发工具加快开发进程并提供全新能力
8 月 28 日,SSG 宣告推出了三款旨在简化多线程软件移植的软件开发产品。这些产品可帮助软件开发人员创建可随着更多内核的添加而不断扩展的多线程代码、预先识别潜在错误、识别性能瓶颈并分析整体性能。这些工具可同时支持 32 位和 64 位应用。
英特尔®线程构建模块 1.0
英特尔®线程构建模块 1.0 可进一步扩展C++ 语言,从而大大简化并行编程。这一基于 C++ 模板的运行时库,可以让线程引入应用程序得到简化,从而使性能提升成为可能,也使软件开发人员免于执行将线程分配到处理器内核的低复杂性操作。凭借全新线程产品,开发人员便无需重新编写、重新测试和重新调试通用的并行数据结构和算法。
该软件支持开发人员一次编写一项应用之后,即可自动识别可用内核的数量并适当地扩充性能。由此,当具有更多内核的全新处理器发布之后,便可减少重新编写应用代码的需求。采用英特尔®线程构建模块的软件更加易于开发和扩充。
英特尔®线程检查器 3.0
英特尔®线程检查器 3.0 是一种线程分析工具,可帮助开发人员以一种能够最大限度减少潜在错误的方式来引入线程。凭借其取得专利的高级错误保护引擎,它可通过识别 32 位和 64 位应用中最隐蔽的线程错误来提供“线程安全性”。英特尔®线程检查器 3.0 具有一项独特的能力,可帮助开发人员了解如何在其应用中最充分地利用Windows*、POSIX 或 OpenMP 线程。
Batali 说:“我们的一名开发人员说,线程检查器帮助他仅用一下午便发现了一般需花费数周甚至数月之久才能查明的问题,这真是令人印象深刻。”
英特尔®线程简档 3.0
Windows 版本的英特尔®线程简档 3.0 可以让开发人员深入了解其应用线程如何相互作用。英特尔®线程简档 3.0 可显示线程应用行为,并查明诸如瓶颈等并行性能问题。它支持开发人员测量应用有效利用的内核数量,并可指出未针对运行应用的硬件平台进行最佳并行化的代码百分比。
借助英特尔®线程简档 3.0,开发人员可迅速构建应用线程部件的原型并评估其性能潜力,这就使得开发人员能够实现其应用部件的线程化,从而带来最佳性能。
英特尔软硬件让您梦想成真
当您下一次沿着 66 号公路(Route 66)驶向 Radiator Springs 小镇,或在猜想一只美食家老鼠的烹饪习惯(《蔬菜杂烩》,将于 2007 年发行)时,请先暂停一下。别忘了,是英特尔软件和硬件帮助实现了这些精彩的冒险。这些产品为 Hotrod 的引擎注入了强劲动力,并为乳酪添加了独特的风味。它们还帮助皮克斯动画工作室凭借其最新发行的七部电影赚得了超过 15 亿美元的巨额票房收入。
软件开发人员知道,他们的未来取决于多核机器。他们的成功与使用多线程来提升性能息息相关。2005-2006 年间,SSG 现有线程工具的用户群增加了一倍。全新和改进后的工具有助于构建出色的应用,进而吸引消费者前来购买。
这真是一个令人激动的好消息。