VRay GPU

by syoyo

VRay も GPU で RT ですか…

http://www.cgarchitect.com/news/SIGGRAPH-2009-CHAOS-GROUP-GPU.shtml

基本的には VRay RT(パストレ)を GPU に移植しただけっぽいです.
VRay RT(CPU 8cores)に比べて 20x くらいは出ているらしい.

GPU だと、コロッセアムシーンは、640×480 pixels, 2 k paths, 5 traces / fps で 5 fps くらいのパフォーマンスが出ているようですね.
これは M rays(Mega rays)にすればおよそ 50~60 M rays / sec と推測されます.

http://www.tml.tkk.fi/~timo/publications/aila2009hpg_paper.pdf

を見るかぎり、現状のハイエンド GPU で 60 M rays / sec は十分達成可能なのでありえる数値だと言えます.

まあ CPU もパストレのようなインコヒーレントレイの計算もアルゴリズムの改善で早くなっていて、
Core i7 で 1 core あたり 4 Mrays(1 レイ 1,000 サイクルほど)で求められるようになっています.

http://www.eng.uwaterloo.ca/~jtsakok/mbvhrs.pdf

この数値を当てはめると、4*8 = 32 MRays /sec と、GPU での 60 M rays /sec に比べて 1/2 くらいとなるので、
VRay RT(CPU 版)の実装が効率的ではないのかもしれません.

いずれにせよ、Vray GPU も、Brazil RT と同じように、レイトレは高速化されたとしても、シェーディングはどうするかという問題があります.
GPU で行なうということで、テクスチャマッピングやプログラマブルシェーダを使えますのでそれなりのことができるでしょうが、
任意のシェーダを動かすことは難しいでしょう.
今回のデモも比較的シェーディングが簡単な、envmap(skylight) IBL + parallel light 的なシェーディングとライティングしかしていないようです.
プロダクションレンダラの高速化(VRay 自体のアクセラレーション)に使うというよりは、
とりあえずはリアルタイムでのプレビズ用途でしょうかね(Vray RT も, VRay GPU もそのような目的だと思いますが)

Advertisements