Irayレンダリングのためのビデオカード選び その2

Category : Iray Renderer
DAZ StudioのIrayレンダラーによるレンダリングについて、そのメモリ使用量とレンダリング時間を調査する連載の第2回は、私が先日購入したビデオカードGeforce GTX 960 (4GB)についての調査結果です。

各GPUのIrayレンダリング性能について、クラウドサービスを提供しているmigenius社がこのページでベンチマーク結果を公開しています。ご参考までに。

※フィギュアの使用メモリ量について項目を追加しました。(2015.09.12)


■GTX660とGTX960の比較

ビデオカードを交換しましたので、前回と同じシーンを新しいビデオカードでレンダリングしてみました。

シーンの構成は前回と同じく以下の通りです。

(A)IRAYサンプルシーン・MaterialBall
   ポリゴン数:中 テクスチャ量:小
(B)裸体の「Genesis 2 Female」(髪もなし)
   ポリゴン数:小 テクスチャ量:中
(C)着衣の「Genesis 2 Female」(髪、ブラウス、スカート、靴)
   ポリゴン数:中 テクスチャ量:中
(D)街オブジェクト「The Streets Of Old London」
   ポリゴン数:大 テクスチャ量:大
(E)(C)+(D)
   ポリゴン数:大 テクスチャ量:大

まずは前回調査したGeForce GTX 660(ビデオメモリ2GB)のGPUレンダリング結果です。
OptiX Prime Accelerationのチェックは入れていません。
 メインメモリビデオメモリレンダリング時間
(A)151MB938MB1分40秒
(B)703MB1028MB3分33秒
(C)1404MB412MB7分8秒
(D)1459MB470MB10分57秒
(E)2814MB761MB16分37秒

※メモリ使用量はレンダリング直前のメモリ使用量からレンダリング中に増えた分のみ表示

続いて新しいGeForce GTX 960(ビデオメモリ4GB)のGPUレンダリング結果です。
 メインメモリビデオメモリレンダリング時間
(A)159MB953MB1分4秒
(B)708MB1045MB2分25秒
(C)1413MB453MB5分18秒
(D)1469MB517MB7分37秒
(E)2850MB808MB11分31秒

※メモリ使用量はレンダリング直前のメモリ使用量からレンダリング中に増えた分のみ表示

全体的に1.4倍~1.5倍のレンダリング速度アップという結果です。
ただ、ビデオメモリが2GBから4GBに増えたにもかかわらず、その使用量がほとんど増えていないのが気になります。GTX960固有の仕様なのか計測ソフトの問題なのかIrayの仕様なのか原因はわかりませんが、いろいろ試してみてもビデオメモリ使用量が2.5GB以上になることはありませんでした。
CUDAコア数はほぼ同じなので、速度アップがビデオメモリが4GBになった効果なのか、世代による改良の効果なのかは判別しにくいところです。
ただ、フィギュア1体のシーンなら5000サンプル、600*800ピクセルをレンダリングするのに10分前後で終わるので、一応満足の結果です。


■複数デバイスでのレンダリング

CPU+GPUレンダ、GPU+GPUレンダ、CPU+GPU+GPUレンダなど、複数のデバイスを使ってレンダリングする場合に、一番性能の良いGPU1枚でレンダリングする場合とどちらが有利なのかは気になるところです。
こればかりは、各デバイスのレンダリング性能やメモリ、チップセットなどいろんな要素で違ってきますので、一概にどの組み合わせが良いと言う事はできません。

今回私のPC環境は次のように変わりましたが、(E)以外はGPUレンダの方が有利な結果となり、かえってCPU+GPUレンダの方が時間がかかりました。
CPUIntel Core i5-2500K 3.30GHz
メインメモリDDR3 16GB
GPUNVIDIA GeForce GTX 960
ビデオメモリGDDR5 4GB

自分のPC環境でどのデバイスでレンダリングするのが良いかを確かめるためには、ログをチェックするのが良いです。
普段レンダリングする規模のシーンを全てのデバイスにチェックを入れてレンダリングし、レンダリングが終了したらレンダリングウィンドウを閉じます。
そしてDAZ Studioのログファイルの末尾を見ると、次のようなログが残っています。

Iray INFO - module:category(IRAY:RENDER): 1.0 IRAY rend info : Device statistics:
Iray INFO - module:category(IRAY:RENDER): 1.0 IRAY rend info : CUDA device 0 (GeForce GTX 960): 1735 iterations, 28.894s init, 642.011s render
Iray INFO - module:category(IRAY:RENDER): 1.0 IRAY rend info : CPU (3 threads): 208 iterations, 19.977s init, 651.687s render


ここには各デバイスで計算したサンプル数(iterations)とデバイスの初期化にかけた時間(init)、レンダリングにかけた時間(render)がデバイス毎に出力されていると思われます。そこでその各デバイスのサンプル数(iterations)を取り出します。

 GeForce GTX 960:1735
 CPU:208

この場合だと上記のようになりますので、89%をGPUでレンダリングしたことがわかります。私のPC環境の場合、GPUが80%以上になるシーンはGPUレンダの方が有利でした。理想は各デバイスのサンプル数が同じぐらいになる構成でしょうね。


■OptiX Prime Accelerationの効果

Render SettingsタブのAdvancedページのHardwareタブ内に「OptiX Prime Acceleration」というチェックボックスがあります。
Irayビデオカード選び2 OptiX設定

これをオンにすると、レンダリング時間が短縮される代わりに、メモリ使用量が増えるとされています。

まずは2つ目の表と同じく、GeForce GTX 960(ビデオメモリ4GB)の「OptiX Prime Acceleration」オフでのGPUレンダリング結果です。
 メインメモリビデオメモリレンダリング時間
(A)159MB953MB1分4秒
(B)708MB1045MB2分25秒
(C)1413MB453MB5分18秒
(D)1469MB517MB7分37秒
(E)2850MB808MB11分31秒

※メモリ使用量はレンダリング直前のメモリ使用量からレンダリング中に増えた分のみ表示

次の表はGeForce GTX 960(ビデオメモリ4GB)の「OptiX Prime Acceleration」オンでのGPUレンダリング結果です。
 メインメモリビデオメモリレンダリング時間
(A)187MB1092MB45秒
(B)741MB1234MB1分54秒
(C)1447MB598MB4分41秒
(D)1436MB764MB6分34秒
(E)2784MB1207MB10分33秒

※メモリ使用量はレンダリング直前のメモリ使用量からレンダリング中に増えた分のみ表示

ビデオメモリ使用量が結構増えますが、その代わりレンダリング時間が30秒~1分、シーンによってはそれ以上短縮されます。メモリに余裕があるならオンにするべきですね。


■ビデオメモリの使用量

「GTX660とGTX960の比較」でビデオメモリを4GBにしたにもかかわらずビデオメモリ使用量が少なかったのが気になったので、追加で調査してみました。
今回はフィギュアを1体~4体まで1体ずつ増やしていきます。使用したコンテンツは全てベースフィギュアに付属している無料で入手できるものですので、ご興味がありましたらご一緒に試してみて下さい。

衣服等着用済みフィギュアは「Genesis 3 Female」以外Content LibraryタブのDAZ Studio Formats>>Scene Builder>Starter Essentialsから読み込めます。
※数値はソフトに表示されたそのままの私の環境での結果です。
メインメモリはDAZ Studio.exeのプライベートRAMの数値で、ビデオメモリは総使用量です。
ビデオメモリの計測にはGPU-Zを使用しました。

 (1)DAZ Studioを起動直後

 (2)「Fiery Genesis」を読み込み、レンダリング中

 (3)「Barefoot Dancer」を読み込み、X Translate -100に移動してレンダリング中

 (4)「Surfer Guy」を読み込み、X Translate 100に移動してレンダリング中

 (5)「Genesis 3 Female」を読み込み、「Dark Storm Pose」と「Dark Storm Outfit」を適用。そしてZ Translate 100に移動してレンダリング中

gputest_r2rd.jpg

各地点のメモリ使用量とレンダリング時間は次のようになりました。
 メインメモリビデオメモリGPUレンダリング時間
(1)216MB203MB
(2)970MB1239MB31秒
(3)2468MB1515MB1分49秒
(4)3914MB1756MB2分33秒
(5)8412MB2691MB4分27秒

※画像サイズ800*600ピクセル、Max Samples5000他レンダリング設定はデフォルト(OptiXオフ)です。

球体1個だけをレンダリングした場合でもビデオメモリ使用量1GB前後でしたので、そこから考えると(1)(4)までの増分は妥当な数値なのかもしれません。(5)は「Dark Storm Outfit」が背景オブジェクト並みのポリゴン数でこれだけIray用のシェーダを使っているのでちょっと特殊ですね。

テーマ : 3DCG
ジャンル : コンピュータ

Comment

ビデオメモリ使用量

解説ありがとうございます。
ログチェックはとても参考になりました。

当方(GTX980)との相違はビデオメモリの使用量ですね。
着衣のV6を1体から2体、3体と増やすと、応じてメモリ使用量が増えました。
1体=2099MB、2体=2456MB、3体=2926MB
ご参考までですが、V7だと着衣1体で2811MBの使用量でした。

Re: ビデオメモリ使用量

Makuraeさんコメントありがとうございます。
計測ソフトをGPU-Zに代えてみたのですが、数値は同じでした。

そこで、フィギュアを複数置いた時のメモリ使用量も記事に追加してみました。
なにぶん内部の動作はわかりませんので実際のレンダリング結果から推測するしかないのが難しいところですが、Irayレンダラーはメインメモリをたくさん使うほどにはビデオメモリはそんなに使わないのではないかという感触です。

こちらではGenesis 3 Femaleである(5)のみGPUレンダでビデオメモリ使用量2070MBでした。

Re: ビデオメモリ使用量

情報どうもありがとうございます。

さっそく私も試してみました。以下はその結果です。
(1) 217kB 387MB
(2) 812kB 1489MB 24秒
(3)2173kB 1744MB 1分07秒
(4)3533kB 1947MB 1分38秒
(5)7935kB 2786MB 2分53秒 *5)のみのビデオメモリ使用量は2272MB

記事と同じ傾向です。
Kotozoneさんが書かれてるようにメインメモリほどビデオメモリは使わないようですね。

Re: ビデオメモリ使用量

GTX980でもメモリ使用量はほぼ同じなんですね。データの提供ありがたいです。
大量に使用するメインメモリは、レンダリング前のデータ構築用なのか、レンダリング中にもビデオメモリとデータのやり取りをしているのかが気になってきます。
非公開コメント

著書
カレンダー
05 | 2017/06 | 07
- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 -
検索フォーム
プロフィール

Kotozone

Author:Kotozone
製品の取扱説明書を読むのが大好きです

FC2ブックマーク
最新記事
カテゴリ
タグリスト

DSプラグイン V4 マテリアル DSシェーダ ライト DS基本 セール Genesis IBL アニメーション タブ解説 iray LuxRender Genesis2 スクリプト ダイナミッククロス ShaderMixer セットアップ Download レタッチ トゥーン バージョンアップ カスタマイズ SSS Photoshop ウェイトマップ NGM D-Form ERC ファー Miki2 IDL M4 大気 物理シミュレーション ボリューム Terrain パーティクル カラーコレクション Genesis3 モーフセット インスタンス アナグリフ V5 カメラ ロボット RAMDisk ダイナミックヘア Hexagon GIMP 3Dプリント SLG モーションキャプチャ Python K4 Linux 日本語訳 

最新コメント
リンク
月別アーカイブ
ご意見ご感想はこちらに

名前:
メール: 
件名:
本文: 

ブロとも申請フォーム

この人とブロともになる

最新トラックバック
FC2カウンター