Pixar RenderMan XPU™ について全3回にわたり掲載します。今回は2回目です。(1回目はこちら)
今回は実際にRenderMan XPU™の検証を行っていきます。
RenderMan XPU™の検証1
それでは、実際にRenderMan XPU™の検証を行ってみましょう。
まずはシンプルティーポットを複数並べたシーンを使ってRISとXPUの比較、CPU・GPUの使用率、およびマテリアルが異なるとどのようにスピードに影響があるのかを調べてみました。
まずはマットなマテリアルを与えたシーンでレンダリング時間を比較してみました。
ティーポット15個を並べてPxrDomeLightとPxrRectLightでライティング。マテリアルはプリセットブラウザーからそれぞれ異なるPxrSurfaceを与えています。レンダリングの設定はインテグレーターをPxrPathTracerとし、サンプリング値などはデフォルトの設定を変更せずにそのまま使用しました。
今回の検証で使用したCPUとGPUは以下の通りです。
- CPU Intel Core i9 11900F AMD Ryzen9 5900X
- GPU Nvidia RTX A5000 Nvidia RTX3060
レンダリング時間は以下の通りです。(RISの場合はItのインスペクターにレンダリング時間が表示されますが、XPUの場合は表示されないためストップウオッチで計測した値となります)
- RIS
Intel Core i9 11900F 6m5s
AMD Ryzen9 5900X 4m49s - XPU(GPU)
Nvidia RTX A5000 42s
Nvidia RTX 3060 1m16s - XPU(GPU+CPU)
Nvidia RTX A5000 + Intel Core i9 11900F43s
Nvidia RTX 3060 + AMD Ryzen9 5900X 1m8s
シンプルなBxDRマテリアルを使用したシーンなのでレンダリング負荷は決して高いわけではありませんが、RISとXPUではレンダリングスピードに関してかなりの差があることがわかります。
RenderMan XPU™の検証2
続いて金属マテリアルを割り当てたシーンで検証を行いました。マテリアルを変更した以外はまったく同じ設定です。
レンダリング時間は以下の通りです。
- RIS
Intel Core i9 11900F 12m48s
AMD Ryzen9 5900X 6m9s - XPU(GPU)
Nvidia RTX A5000 1m30s
Nvidia RTX 3060 2m11s - XPU(GPU+CPU)
Nvidia RTX A5000 + Intel Core i9 11900F 1m30s
Nvidia RTX 3060 + AMD Ryzen9 5900X 2m4s
金属の場合は鏡面反射が質感の多くを占め計算負荷が上がるため、レンダリング時間は2倍近くかかっている。
RenderMan XPU™の検証3
続いて透過屈折を伴うマテリアルを割り当てたシーンで検証を行いました。こちらも同じくマテリアルを変更した以外はまったく同じ設定です。
レンダリング時間は以下の通りです。
- RIS
Intel Core i9 11900F 36m30s
AMD Ryzen5900X 19m4s - XPU(GPU)
Nvidia RTX A5000 1m12s
Nvidia RTX 3060 2m42s - XPU(GPU+CPU)
Nvidia RTX A5000 + Intel Core i9 11900F 1m25s
Nvidia RTX 3060 + AMD Ryzen5900X 2m34s
ガラスの場合は鏡面反射だけではなく屈折計算も同時に行う必要があるため、レンダリング時間はさらに伸びる傾向にあるのが一般的ですが、興味深いことに、RISを使った場合のレンダリング時間の長さに比べて、XPUを使った場合は金属の場合と比較してそれほど長くなっていないところが興味深い点です。
以上の結果をグラフにしてみました。
これらから分かることは、これまでのRISよりもXPUの方が明らかにレンダリングが速いということ。単純な比較でXPUはRISに対して8.5倍から30倍もの速度差を叩き出しています!
シンプルな質感に対して、RISでは金属質感で約2倍、ガラスの質感になると4~6倍と伸びていますが、XPUの場合は金属の場合こそ2倍になっていますが、ガラスの場合は1.7~2倍程度で収まっている点特筆できます。
また興味深いことに、GPUとCPU両方を使ってレンダリングした場合、GPUとCPUの性能差が大きい場合は逆に遅くなる場合が見られました。RTX A5000のような高性能のGPUを使う場合はCPUの支援が足かせになることもあるということです。逆にRTX 3060のようなミドルレベルのGPUの場合は、Ryzen9 5900Xというマルチコア性能も合わさってレンダリング時間が短くなり、XPUのメリットが発揮されました。
CPUおよびGPU使用率は以下の通りです。
次回第3回目(最終回)の記事では、RenderMan XPU™とRISの画質比較やサンプルシーンを用いたルックデブを行います。
RenderManについて
RenderManはハリウッド映画において、実写合成やリアリティを優先したプロフェッショレンダラーです。常にトップクオリティが求められるハリウッドニーズと技術が凝縮しています。RenderManは特に3Dアニメーションと視覚効果(VFX)のレンダリングにおいて大きな目標を達成するために設計されました。その結果RenderManは高速で効率よく最先端の機能を提供すると共に複雑なジオメトリを大量に取り扱うことができます。