V-Ray GPUの基礎知識

V-Ray には「V-Ray」と「V-Ray GPU」という 2 つのレンダラーが同梱されています。 V-Ray GPU レンダラーは、システムから最大のレンダリング パフォーマンスを提供するように設計されています。これを実現するために、V-Ray GPU では、さまざまな種類のプロセッサに対応する複数のエンジンから選択できます:

  • RTX世代以降の NVIDIA RTX GPU (RTX)
  • ほぼ全ての NVIDIA GPU (CUDA)
  • x86 互換CPU全て (CUDA-x86)

これら3つのエンジンでコードの実行方法が異なるため、シーンに最適なエンジンは異なります。たとえば、同じRTXクラスのGPUを使用する場合、レイヤー化されたシェーディングが多いシーンではCUDAエンジンを使用した場合が最も高速になる可能性が高く、単純なシェーディングと大量にインスタンス化されたジオメトリがあるシーンは RTX エンジンを使用した場合が最も高速になる可能性が高くなります。

GPU はもともとグラフィックス専用に設計されており、DirectX、OpenGL などのグラフィックス標準APIを実行する為の特定のハードウェアとソフトウェア (別名ドライバー) を備えています。非常に高速ですが、これらの標準APIは完全なレイトレーシングをサポートしていないため、一般的なレイトレーシングレンダリング・アプリケーションの実行が非常に困難になります。

グラフィックプロセッサである GPU は多くのコアを備えており、並列タスク (全てのディスプレイピクセルを一度に表示する処理を考えてください) を効率的に処理しますが、CPU は次々と線形にプログラムを実行するように設計されています。 NVIDIA の CUDA プログラミング言語を使用すると、一般的な処理コード (Cに類似) を GPU 上で実行でき、これはGPUで並列化されたタスクを処理するのに最適な方法です。レイトレーシングは「あからさまな並列処理」 (非常に多くのレイが一度に評価されるため) と呼ばれることが多く、CUDAを使用すると、V-Ray GPU のような並列処理を GPU 上で高速に実行できます。

時間の経過とともに、CPU は継続的にコアを追加し、より効率的にレイトレーシングなどの並列処理ができるようになり、V-Rayレンダラーはこれを最大限に活用する様になっています。V-Ray GPUのレンダラエンジンは、CUDA-x86 モードと呼ばれる CPU 上で CUDAエンジンを実行する事により、CPUをGPUデバイスとして活用する事ができます。 V-Ray GPU はこの様にCPU上のCUDAエンジンと連動してレンダリングを実行できるため、コンピュータ内の全てのリソースを使用してレンダリングを高速化できます。業界ではこのレンダリングを「ハイブリッド」または「XPU」という愛称で呼んでいますが、これは「総合的なシステム パフォーマンス」を意味するものでもあります。 V-Ray でのハイブリッド レンダリングの詳細については、こちらをご覧ください。

近年、GPU でレイトレーシングを処理できる名前に「RTX」が付いた ハードウェアが NVDIA社のGPUに追加されました。これらの GPU にはレイ トレーシング専用の新しい「RT コア」があり、V-Ray GPU RTX エンジンなどでそれらを利用するにはCUDAとは別のコードが必要です。シーンが RT コアの得意分野と一致する場合、このモードは非常に高速になります。Nvidia RTX GPU の V-Ray GPU サポートの詳細については、こちらをご覧ください。


Photo Credit, Ian Spriggs​

V-Ray GPUには3つのレンダリングエンジン(CUDA,CUDA-X86,RTX)がありますが、これらは相互に 100% 互換性があり、各エンジンが他のエンジンと視覚的に同一の結果を生成するため、異なるモードやハードウェアを使用するマシン間でネットワーク レンダリングを行うときにちらつきのないアニメーションを実現できます。 V-Ray GPU 内でエンジンを切り替える際のリスクを考慮する必要ありません。どのエンジンを使用するかの選択は簡単です:

  • マシンに NVIDIA社の GPU が搭載されていない場合は CUDA-X86 エンジンを使用して CPU 上でV-Ray GPUを実行できます。
  • マシンに NVIDIA GPU が搭載されていますが、RTXに対応していない場合は、総合的なシステムパフォーマンスを得るために CUDA エンジンと CUDA-X86 を組み合わせて使用してください。
  • マシンに NVIDIA社の RTX GPU が搭載されている場合は、代表的なフレームを RTX と CUDA でレンダリングしして早い方を使用します。

注: マシンに複数のGPUがあり、そのうちの1つをユーザーインターフェイス描画用に空けて使用する事を推奨します。GPUインタラクティブ レンダリングのチューニングについては、この投稿をご覧ください。

注:CUDA、CUDA-x86、および RTX エンジンは標準の V-Ray レンダラー(CPU)と同じユーザーインターフェイスを共有しますが、V-Ray GPU は特定の計算を実行する方法が通常の V-Rayエンジン(CPU)とは異なる事に注意してください。結果を比較すると、かなり近いように見えても、絶対に 1 対 1 で一致にはなりません。なおChaos社は V-Ray と V-Ray GPUが完全に同じ結果になる事を目標に開発していません。このため、プロジェクトの途中でレンダラーを切り替えないことを強くお勧めします。 V-Ray GPU レンダラーを使用してシーンのセットアップを開始すると、UI にはサポートされているオプションのみが表示され、シーンは GPU レンダリング用に最適化されます。

V-Ray GPU には通常V-Rayエンジンと比較して次の利点があります:

  • GPUは、特定の計算で CPU よりも優れたパフォーマンスを発揮することがよくあります。 V-Ray GPU は、ルックデベロップメントと最終レンダリングに高速でインタラクティブなフィードバックを提供します。
  • CPUの場合、ほとんどのマシンでは1つのしかCPUがありませんが、V-Ray GPUでは簡単に 1台のマシン内で複数のGPUデバイスを利用できます。マルチGPUスケーリングの詳細については、こちらをご覧ください。
  • ハードウェアの拡張やアップグレードが簡単です。ワークステーションの GPU を交換したり、GPUを追加するだけです。
  • 強力なGPU付きワークステーションをお持ちの場合は、そのコンピューティング能力を全て活用できます。CPUレンダリング中にGPUが放置されることはありません。コア数が非常に多い CPU (AMD Threadripper など) は、多くの場合、ハイエンドGPU の速度に匹敵します。
  • V-Ray GPU には、プロダクションワークで必要な機能がほぼ全て備わっています

完全なシステム要件と推奨ドライバーについては、この投稿を参照してください

新しいグラフィックス カードを探している場合は、プロジェクトに合わせてメモリを十分に搭載したGPUを選択する必要があります。

  • パフォーマンス、V-Ray GPU のパフォーマンスは、特定の GPU 世代の CUDAコアとコアクロック速度でほぼ直線的にスケーリングします。Nvidia GPU の世代スケーリングの詳細については、こちらをご覧ください。
  • メモリ: CUDA または RTX モードのいずれかを使用する場合、レンダリングされるシーン全体 (ジオメトリ、テクスチャ、バッファなど) が GPU メモリに完全に収まる必要があります。利用可能なグラフィックス カードメモリが増えるほど、より多くの詳細、テクスチャ、モデルをシーンに追加できるようになります。

V-Ray Benchmark は、V-Ray GPU のパフォーマンスを比較できる無料のユーティリティです。Chaosのベンチマークのリストは、さまざまな GPU やハードウェア構成を比較するための信頼できるリソースです。

V-Ray GPU のパフォーマンスは、複数のGPUの搭載でほぼ直線的に拡張される点に注目してください。マルチ GPU システムの GPU はタイプ、速度、世代が異なる場合がありますが、通常、同じ世代で同様のパフォーマンスの GPU を複数組み合わせると最高の効率が得られます。

CUDA-x86 (CPUをGPUデバイスとして使う)モードのみで実行している場合、システムの RAM が使用される点に注意してください (CUDA-x86ではメモリのキャッシングがサポートされています)。CUDAモードでシーンが GPU のメモリを超えている場合でも、多くの場合、CUDA-x86 モードを使用してシーンをレンダリングできます。

はい、V-Ray GPU は、NVLink をサポートし、物理 NVlink ブリッジがインストールされている GPUのペア間でメモリをプールできます。たとえば、NVLink を使用する場合、それぞれ 24GB のカードを 2 枚使用すると、48GB を必要とするシーンをサポートできます。 NVLink サポートは、Ada 世代より前の大型 GPU で見られます。 NVLink セットアップの詳細については、こちらをご覧ください。

  • 最終更新: 2024/05/08 09:00
  • by oakcorp