January 11, 2010

映画「Matrix」におけるFreeBSDとRenderMan

オープンソースまつり 2001 in 秋葉原という記事に興味深いことが載っています。

32台のデュアルプロセッサのFreeBSDシステムがワーナーブラザーズフィルムの映画「The Matrix」の中で多数の特殊効果を生み出すために使われました。<中略>「The Matrix」製作に実際にメインで使用されたFreeBSDを利用したシステムでは、Linux用レンダリングソフトPixar's RendermanをFreeBSDのLinuxモード上で使用しました。
マトリックスでRendermanが使用されていたことはPixarのサイトに掲載されていたので知っていましたが、マトリックスを製作したManex Visual Effects社がFreeBSDでRendermanを使っていたというのは初耳でした。しかも、興味深いことに"FreeBSDのLinuxモード"を使用しているという点です。FreeBSDに関するドキュメント"FreeBSD ハンドブック"ではこれをLinux バイナリ互換機能と表現しています。
簡単に言ってしまえば、この機能により全ての Linux アプリケーションの 90% が修正なしに FreeBSD 上で起動できます。 この中には Star Office や Linux 版の Netscape、Adobe Acrobat、RealPlayer 5 と 7、 VMWare、Oracle、WordPerfect、Doom、Quake などがあります。 また、ある状況においては Linux バイナリを Linux で動かすよりも FreeBSD で動かすほうが良いパフォーマンスが出るという報告もあります。
「Linux で動かすよりも FreeBSD で動かすほうが良いパフォーマンスが出る」と書かれていますが、そもそもManex Visual Effects社においてRenderManをFreeBSD上で動かそうと思ったのは「既存のSGIシステムでは能力が足りない」からだそうです。そして「最速のSGI R10kシステムよりもメインのFreeBSDマシンの方が処理性能が上だった」そうです。Manex社の上級システム管理者であるCharles Henrich氏がこれを述べています。

つまり、RenderManはSGI(IRIX)とLinuxよりもFreeBSDで動かした方がパフォーマンス面で良い結果が得られる可能性があると。FreeBSDの必要性をひしひしを感じてきました。早くテストしたいですね。