チュートリアル / 宋さんの3ds Max キッチンスタジアム
第11回:iray <その1> irayを使おう

  • 3ds Max
  • コラム
  • チュートリアル
  • ビジュアライゼーション
  • レンダリング

irayって何?

irayは3ds Max 2011 Subscription契約ユーザー限定で提供を開始し、新しい3ds Max 2012に標準で搭載される新しいレンダリングプログラムです。

irayは、mental image社が開発した物理的な光の挙動をシミュレートすることで写実的なイメージを生成し、インタラクティブ性を持たせた高性能なグローバルイルミネーションのレンダリング技術で、従来型のレイトレーシングレンダラとは異なり、irayは、グローバルイルミネーションを近似するために必要としていた複雑なシェーダやマテリアル設定に依存しません。

irayは、CUDAのプログラミングモデルを最大限に活用することで単一および複数のNVIDIA GPUプラットフォーム上で対話型にプレビューできる機能を持ち、パフォーマンスの高い描画レベルを実現しています。
3ds Max 2012ではこのirayを3ds Maxの機能の一部としてGUIから操作できるように提供しています。
irayを使用する最大のメリットは使う方のCGスキルや能力にあまり影響を受けないという点です。例えば商品カタログの製品イメージ制作なのでは、誰がオペレーションしても均一のクオリティが求められ、なおかつイメージが完成するまでの制作時間(レンダリング時間)を予測できるものが望ましいでしょう。irayはこれらの要求を満足させるスーパーレンダリングプログラムといえばいいでしょうか(言い過ぎですかね・・)

01.jpeg


iray FAQ

irayはGPUを有効に活用する新しいタイプのレンダリングプログラムです。ではどういったハードウエア環境を用意すればいいのでしょうか? カタログに載っている動作環境一覧だけでは判らない、実務的な情報をあげておきましょうね。

Q:3ds Maxではirayを使ったレンダリングでCPUもGPUも両方使用することができますか?
A:3ds Maxが起動しているPC上のOSで認識している全てのCPUとGPUをフルに使用して計算を行います。


Q:irayのGPUアクセラレーションが有効なグラフィックスハードウエアはどういったものですか?
A:NVIDIA CUDA互換のグラフィックスボードであれば使用することができます。これはNVIDIA Quadroシリーズだけではなく、NVIDIA Geforceシリーズも含みます。


Q: CPUのスペックは関係ありませんか? GPUによって処理は大きく変わりますか?
A:irayでの計算処理に関しては、CPUよりもGPUのパフォーマンスが強く影響します。
以下のサンプルレンダリングではCPUのみでの計算とGPUのみの計算ではかなりの差が出ています。GPUボードは同一PC内に複数本設置が可能で、その場合はコア数の比率でリニアに処理速度を上げることができます。(注)

CPU + GPU + GPU2
12分42秒
CPUのみ
34分37秒


CPU : インテル® Xeon® プロセッサー X5680 x 2ヶ
メモリー : RAM 24GB
GPU : Nvidia Quadro 5000
GPU2 : Nvidia Tesla 2050



最新のFermiアーキテクチャー搭載のQuadro 5000と数世代前のQuadro 4600とでは以下のスペック差があります。


Quadro 5000
CUDAコアプロセッサ数
352基
プロセッサクロック
1020MHz



Quadro 4600
CUDAコアプロセッサ数
191基
プロセッサクロック
600MHz


(注)GPUの増設はSLIを必要としません。増設した場合の処理速度の向上はPCIバスのボトルネックは考慮しない場合の理論値です。実際にはバスのボトルネックのためにある一定以上のGPUカード枚数を超えると処理速度の向上が落ちることが予想されます。



また、解析計算だけを行うGPUカードも販売されています。Nvidia Teslaというプロセッサボードですが、既存のPCに追加で設置し使用することができます。また、GPUの世代が混在した環境でも使用することは可能です。


Q:NVIDIA QuadroとGeforceを比べた場合パフォーマンスに違いは出ますか?
A: GeForceの製品は、主にゲームパフォーマンスのために設計されて、Teslaは最高の計算性能と機能のために設計され、Quadroは、グラフィック面での特化した製品になります。各GPUファミリは、それぞれ異なる機能を持っていますが、最も大きく異なるのが信頼性と利用できるシーンのサイズです。NVIDIAは、そのプロフェッショナル向け製品 (QuadroやTesla) に関してはプロフェッショナル向けの製品保証として3年間の保証を添付しており、耐久性に関しても保証をしています。
コンシューマ製品であるGeForceは、様々な開発会社でそのGPUを搭載した製品が開発されており、その保証範囲も様々です。NVIDIAのプロフェッショナル向け製品であるQuadroシリーズは、電源制約やワークステーション、サーバー室の信頼性のニーズに収まるようにコンシューマ製品よりも遅いクロックレートを持っている可能性があります。
QuadroとTeslaでは、3ds Maxのシーンを処理するのに必要となるメモリーに関して、GeForceの製品よりもはるかに多くの容量を提供しています。 このメモリー容量の大小がirayレンダリングの実行に大きく影響します。
短期的に見れば安価でクロックスピードの速いGeforceを利用する手もありますが、頻繁に、そのハードウエアを交換する必要が出てくるでしょう。また、頻繁な機材交換はPCIバスという重要なデバイススロットの故障を招く可能性もあります。もっとも重要なことは irayレンダリングを使用すると、GPUカードへの負荷が非常に高くなり、さらにその継続時間も長時間になることから、一般コンシューマ製品での耐久性に大きな危険が潜むことになります。


Q:iray レンダリングにはSLI認証されたマザーボードが必要になりますか?
A:いいえ、irayが使用するマルチGPU処理にはSLIテクノロジは必要としません。irayのパフォーマンスを最大限に発揮するには、Nvidiaコントロールパネルにて以下の設定を行ってください。

- SLI 設定をオフ
- ECC をオフ(Fermi コアベースのQuadro とTesla GPU の場合)
- PhysX 設定はCPUのみにする




Q:irayはmental rayのようなディストリビュートレンダリングは可能ですか?
A:いいえ、irayはディストリビュートレンダリングには対応していません。


Q:irayはBackburnerを使ったネットワークレンダリングに対応していますか?
A:はい、ネットワーク先のPCのCPUとGPUを使用して計算させることができます。


Q:GPUだけで計算させることはできますか?
A:システム上で認識された全てのGPUとCPUを自動的に使用するように設定されています。現在の3ds Maxに実装されたirayではそれらを切り離すことはできません。(注:Macscriptなどでカスタムインターフェースを作成すれば可能です)


Q:irayレンダリングにはどのくらいのGPUメモリーが必要になりますか?
A: irayを使ったレンダリングシーンに対してGPUアクセラレーションを利用するためにはGPUグラフィックスメモリにそのデータが収まる必要があります。GPUメモリーに収まらない場合、そのレンダリング処理においてはGPUが無視され、すべての処理がCPUやPC本体のRAMに移り、実行速度が遅くなることになります。
シーンは、PC本体RAMを超える場合は、iray仮想メモリーが使用され、さらに処理速度が落ちていきます。メモリー使用量としては、800万の三角形ポリゴンごとに1 GBのメモリーを消費します。 また、使用するビットマップイメージに関しては1ピクセルあたり3バイトのメモリーを消費します。

Q:Nvidia GPUカードはirayの計算においてPCのシステムメモリを使用できませんか? A: 3ds Maxは、シーンを処理するためにはシステムメモリを使用します。irayはもちろんCPU でも動きますので、その場合はその容量を利用できます。ただし、 irayは、レンダリングされている場合、CPUとGPUは、グラフィックスとシステムメモリ(それぞれ)のメモリーの同量を消費しますので、仮にGPUメモリーの容量が少ない場合はシステムメモリの消費量も少なくなってしまいます。

Q:各1GBのGPUメモリーを搭載しているグラフィックスカードを3枚実装していた場合、利用できるメモリー空間は3GBになるのでしょうか?
A:レンダリング処理でGPUを使用する場合、各GPU間でのメモリー容量を完全に統一する必要があります。この例では、各カードが実装しているメモリー量が最大使用範囲となるので、シーンサイズは1GBまでとなります。1GBを超える場合はCPU上で排他的にレンダリングされます。

Q:1枚のカードが1GBメモリーでもう一枚が3GBメモリーのグラフィックスカードを実装していた場合、2GBのシーンファイルを計算しようとした際に、使用するメモリーはどちらを使いますか?
A:このケースでは1GBメモリーのグラフィックボードは計算から除外され、3GBメモリーを搭載したグラフィックボードだけを使用します。(もちろんCPUも使用します)

Q:irayは被写界深度やモーションブラーを使用することはできますか?
A:irayは被写界深度を設定することが可能です。しかし、時間軸に沿ったモーションブラーエフェクトは使用できません。

Q:irayを使ってアニメーションシーケンスをレンダリングすることが可能ですか?
A:可能です。各フレームで同じレイの反復回数を設定するのがよいでしょう。また、各フレームにあてがう計算時間を指定して計算させる方法もあります。たとえば1フレームあたり12秒の計算時間を許可し、仮レンダリングを行い、最後に書くフレームの計算密度を上げて、よりよい結果を得るといったワークフローも可能です。


irayを本格稼働させようとすると、ハードウエアに対する投資が少々必要になるかもしれませんが、それに見合うパフォーマンスを得ることが出来ます。とはいえ、既存のグラフィックカードがNvidia Cuda互換でない場合や、世代が古すぎる場合でも使用できない訳ではありませんので、ご安心ください。 ハードウエアを新規に導入する場合はグラフィックスカードやGPUボードのメモリー搭載量に注意してください。せっかく高価なグラフィックスボードを購入してもGPUカードのメモリー量が少ないようですと、本来の威力を発揮できませんし、構成を間違えると無駄な投資になってしまう恐れがあります。 業務向けの制作活動であれば最低でも2GB以上のグラフィックスメモリーが搭載されていることが望ましいですね。

では次回はirayのインターフェイスを理解して、実際にオペレーション方法の解説に行きましょう。

製品購入に関するお問い合わせ
オートデスク メディア&エンターテインメント 製品のご購入に関してご連絡を希望される場合は、こちらからお問い合わせください。