GPU第三勢力 もう一つの刺客"XGI Volari"の実力は?

 

Text&Photo トライゼット西川善司

 XGIが,DirectX 9世代プログラマブルシェーダ2.0対応のGPU"Volari"シリーズのリリースを開始した
 ATI,NVIDIAの二大巨頭の寡占が進むPC向けGPUであるが,S3がDeltaChrome,XGIがこのVolariを発表するなど,ここにきてGPU第三勢力の動きが活発になっている。
 本稿では,S3 DeltaChromeと並んで,期待の新鋭GPUといえるXGI Volariの,3Dゲームパフォーマンスの実力について見ていこう。


XGIとは? Volraiとは?

今回テストした「Volari Duo V8 Ultra」はVolari-GPUを2基搭載したもの。2基のファンに目を奪われがちだが,むしろ二系統の4ピン電源コネクタがあることに驚くべきだ

 XGIは,SiSでXabreなどを開発していたグラフィックス事業部が分離する形で設立されたGPU専門のチップベンダーだ。その後Trident Microsystemsのグラフィックス事業部門を買収し,規模を拡張している。
 このたび出荷が開始されたVolariシリーズは,2003年のCOMPUTEX TAIPEI 2003で電撃的に発表されて注目を集めたGPUで,XGI初のGPUではあるものの,実質的にはSiS Xabreの後継と考えられている。極論すればSiS XabreのDirectX 9対応バージョン……といっていいかもしれない。

 最初にVolariシリーズのラインナップを整理しておこう。
 VolariシリーズにはXP5,V5,V8,Duoといったバリエーションが存在する
 V5とV8の違いは,コアエンジン内のピクセルレンダリングパイプラインの本数,ピクセルシェーダユニットの数である。
 V5,V8は共にスタンダード版と上位モデルのUltra版に分かれ,これらの違いはコアエンジンの動作クロック及び,組み合わされるメモリクロックとなっている。
 同グレードのV5とV8では,コアエンジンの動作クロックと,組み合わされるメモリクロックに違いはないが,上位のV8はピクセルレンダリングパイプライン本数と,ピクセルシェーダユニット数が2倍のデザインになっているため,パフォーマンス格差はそれなりに生じることになる。なお,頂点シェーダユニットの数はV5,V8共に同じだ。
 そしてVolariシリーズの最上位モデルとなるのがDuoだ。これはVolari-GPU2基を1カード上に搭載したデュアルGPUビデオカードだ。Volari Duoにも上位/下位モデルが存在し,下位モデルはV5 Ultraを2基組み合わせたDuo V5 Ultra,上位モデルはV8 Ultraを2基組み合わせたDuo V8 Ultraとなっている。

Volariシリーズの公称スペック (一部筆者推測)
  Volari
 Duo V8 Ultra
Volari
 Duo V5 Ultra
Volari
 V8 Ultra
Volari V8 Volari V5 Ultra Volari V5 Volari XP5
コアアーキテクチャ DirectX9.0世代 DirectX8.1世代
コアクロック 350MHz 300MHz 350MHz 300MHz 250MHz
ビデオメモリ
 インターフェース
128bit×2 128bit
ビデオメモリ 256MB×2 256MB 128MB
最大メモリクロック(DDR) DDR1-750MHz
DDR2-1GHz
DDR1-750MHz 
DDR2-1GHz
DDR1-750MHz 
DDR2-1GHz
DDR1-650MHz
DDR2-900MHz
DDR1-750MHz 
DDR2-1GHz
DDR1-650MHz
DDR2-900MHz
DDR1-500MHz
メモリバンド幅 DDR1-12.0GB/sec×2
DDR2-16.0GB/sec×2
DDR1-12.0GB/sec×2
DDR2-16.0GB/sec×2
DDR1-12.0GB/sec
DDR2-16.0GB/sec
DDR1-10.4GB/sec
DDR2-14.4GB/sec
DDR1-12.0GB/sec
DDR2-16.0GB/sec
DDR1-10.4GB/sec
DDR2-14.4GB/sec
8.0GB/sec
テクセル毎秒 28億×2 14億×2 28億 24億 14億 12億 10億
頂点毎秒 1億7500万×2 1億7500万×2 1億7500万 1億5000万 1億7500万 1億5000万 6250万
頂点シェーダユニット 2×2 2 1
ピクセルレンダリングパイプライン 8×2 4×2 8 4
ピクセルシェーダユニット 4×2 2×2 4 2 1


デュアルGPU構成のVolari Duo

 DuoのデュアルGPUという構成を聞いて,3dfxのVoodooシリーズを思い出した人もいるかもしれない。
 Voodoo1/2ではPCIビデオカードのVoodooカードを2基搭載し,偶数走査線と奇数走査線をそれぞれのVoodooでレンダリングするという仕事分担でパフォーマンスの効率化を図った。
 これに対し,Volari Duoではフレーム単位での分業を行う。あるフレームをVolari#1がレンダリングしている最中にVolari#2は次フレームのレンダリングの準備をオーバーラップさせ,3D描画の効率化を図るわけだ。なおGPU側に,滞りなくレンダリングに必要な情報を送り続けられなければ,レンダリング処理のオーバーラップができない。したがってCPUやその周辺が十分に高速でないとこのシステムのメリットは出にくいことになる。
 また,Volari#1と#2はそれぞれ独立したビデオメモリを積んでいる。このことからテクスチャデータはVolari#1,#2双方のビデオメモリに転送されることとなる。
 また,シーンをテクスチャにレンダリングし(動的な環境マップ作成など),これを次フレームでもテクスチャとして用いる場合などでは,そのままではVolari#1と#2とでテクスチャの整合性がおかしくなるため,テクスチャメモリの同期作業が必要になる。こういうケースではレンダリングフェーズのオーバーラップは困難になり,パフォーマンスの向上は望めなくなる

両GPU間は専用通信バス「BitFluent Bus」で結ばれる


パイプラインのすべてにピクセルシェーダがあるわけではない

 スペック表を見て「おや?」と思った人も多いかもしれない。
 ピクセルシェーダユニットの数がピクセルレンダリングパイプラインの半分しかないのだ。例えばVolari V8ならば,8本のパイプラインのうち4本にはピクセルシェーダユニットがない。
 「あとの4本にはピクセルシェーダが無いのか?」という疑問が浮上するが,実際その通りなのだ。
 では,あとの4本はどう機能するかというと,DirectX 7世代相当の固定パイプラインとして機能する。つまり,シェーダプログラムは,含んだレンダリングを4本分のパイプラインでしか動作できないことになる
 スペック通りの8本パラレルのレンダリング実行は,DirectX 7世代以前の固定パイプライン描画を行った場合のみに限定されるのだ。
 こうした設計になった理由は,Volariが最大性能よりもコストパフォーマンスを重視した製品だからと推測される
 なお,ピクセルシェーダ部の浮動小数点実数演算精度は24ビットで,ATI RADEON系と同等となっている(GeForceFX系は32ビット)。


実売価格4万円台後半のVolari Duo V8 Ultraの実力は?

 今回,入手することが出来たVolariは,最上位モデルとなる「Volari Duo V8 Ultra」だ。カードはC.P.Technology製,型番は「X40D-D3」で,初期ロットのためか,メモリクロックが公称スペックの1GHzよりも若干低い900MHz(450MHz DDR2 SDRAM)となっている。
 さっそく3Dゲームを使ったベンチマークテストを中心に実行してみた。テストは基本的にはデフォルト設定で行っているが,そうでない場合は各ベンチマークテスト項目ごとに設定を特記しておいた。
 またテスト画面モードは,多くのPC向け3Dゲーム開発元が,その動作環境を「現在の標準」として想定している1024×768ドット/32ビットカラーに設定した。
 対抗GPUとして用意したのは,NVIDIA GeForceFX 5600と,GeForceFX 5950UltraATI RADEON 9600PRORADEON 9800PRO。そして前回「こちら」で紹介したS3 DeltaChromeだ。
 Volari単体はハイエンドGPUとして設計されていないのは前述したとおりだが,デュアル構成時のDuoのパフォーマンスはちょっと予測できない。ということでGeForceFX 5950UltraやRADEON 9800PROのようなハイスペックモデルにも登場願ったというしだいだ。
 ちなみに,今回使用したVolari Duo V8 Ultra搭載の「X40D-D3」は,販売価格が4万円台後半であり,価格的にはGeForceやRADEONの最上位モデルと競合することが予想され,そのパフォーマンスに期待が集まるのも当然といえば当然だろう。

上がGeForceFX5950Ultraカード。値段も互角なら巨大さも互角,果たしてそのパフォーマンスは?

 

3DMark03Build340〜最上位GeForce,最上位RADEONに迫る

 業界標準の3Dベンチマーク「3DMark03」のテスト結果を下記に示す。
 ドライバの世代が新しくなるたびに「3DMark03最適化」が進んでいるために,事実上"業界標準"の意味が薄くなりつつあるが,とりあえず結果を見てみたい。
 3DMark03のスコアは,いわゆるメインストリームクラスGPUを大きく上回り,最上位クラスのGeForceFXとRADEONに迫る結果となった
 幸いにも3DMark03のスコアに直接影響する,3Dゲーム系テストGT1〜GT4はあまりフレーム間に相関性のある環境マップ生成などが行われていないため,Volari Duoが想定する2GPUによる分散レンダリングスタイルが功を奏したようだ。
 もう一つ特記すべきなのは,二つのFill Rateテストの結果だ。
 FillRate(Single-Texturing)は,GPUコアクロックとメモリクロック,そしてビデオメモリバンド幅が結果に直接結びつくテストだ。
 GPU単体のメモリバスが128ビットとなっているVolariだが,メインストリームクラスGPU群とは,そのメモリ速度比以上のハイスコアをマークし,256ビットのGeForceFX 5950UltraやRADEON 9800PROにも肉迫している
 なぜかというと,このテストもフレーム相関が皆無であるため,GPU×2構成が理想に近い形で並列動作でき,いってみれば見かけ上は256ビットとして動作できたためだ
 一方,FillRate(Multi-Texturing)は,GPUコアクロックとメモリクロック,そしてビデオメモリバンド幅に加え,さらにレンダリングパイプラインの本数がスコアに直結する。
 Volariはプログラマブルピクセルシェーダが半分のパイプラインにしか搭載されていないが,このテストは固定パイプラインで実行できるため,Volari Duo V8 Ultraでは,8本のパイプラインすべてが活用される。しかも,ここでもフレーム相関のテクスチャなどは出てこないので,各Volariは並列動作が出来る。そのため,ここでも見かけ上,16パイプライン的な動作が可能になる。

3DMark03Build340の結果(1024×768/32ビットカラー,設定デフォルト)

  3DMark Score GT1 - Wings of Fury GT2 - Battle of Proxycon GT3 - Troll's Lair GT4 - Mother Nature Fill Rate (Single-Texturing) Fill Rate (Multi-Texturing) Vertex Shader Pixel Shader 2.0 Ragtroll
  3DMarks FPS FPS FPS FPS MTexels/s MTexels/s FPS FPS FPS
Volrai Duo V8 Ultra 4526 129.6 36.7 28.4 22.9 1472.4 2187.2 16.1 17.3 11.5
DeltaChrome 2441 96.2 15.3 13.2 14.3 777.1 1990 10.1 15.7 9
GeForceFX5600 2638 108.2 18.5 14.9 11.9 860.9 1083.6 6 11.7 10.3
ATI RADEON9600PRO 3266 113.9 21 19.1 19.6 902.6 1539.2 10.4 29.3 13.6
GeForceFX5950Ultra 5652 154.1 43.4 33.4 34.9 1513.8 3324.3 17.9 40.8 21.2
RADEON9800PRO 5287 147.2 37.6 32.6 33.3 1695.2 2604.8 18.1 48.4 24.2

 

3DMark03のスコアはメインストリームクラスを引き離し,価格に見合う感じだが……

 

Unreal Tournament 2003(1024×768/32ビットカラー)〜全GPUで横並びの結果

 「ジオメトリ量はそれなり」「シェーダは簡易的だが,固定パイプラインのマルチテクスチャリングは多用する」……2003年までの3D-PCゲームの典型スタイルともいえた「Unreal Tournament 2003」だが,もはや現行GPUでのスコア差は出にくくなっており,スコアはほぼ横並びの結果となった

Unreal Tournament 2003(1024x768/32ビットカラー)

  Flyby Botmatch
Volrai Duo V8 Ultra 145.160965 54.14653
DeltaChrome 132.833649 52.407398
GeForce FX 5600 123.161591 54.602528
RADEON 9600PRO 143.817032 55.475719
GeForce FX 5950Ultra 153.675858 54.227997
RADEON 9800PRO 157.117142 55.208752

 

このクラスの3Dゲームであれば,もはやメインストリームクラスGPUでもストレスなくプレイできるということだ


Splinter Cellベンチマーク(1024×768/32ビットカラー)〜ここでもハイエンドGPUに迫る結果を残す

 「Tom Clancy's Splinter Cell」の,Version.1.2パッチにて追加されたベンチマークモードで計測を行った。例によって,GeForce系が有利にならないように,影生成メソッドではシャドウバッファ技法をキャンセルし,プロジェクションシャドウ技法を使うように設定して計測した。
 結果は,RADEON 9800PROを抜き,GeForceFX 5950Ultraに肉迫するものとなった
 SplinterCellのレンダリングエンジンは,プログラマブルシェーダ1.xを積極的に活用している。ベンチマークテストで活用されるテストシーンでは,フレーム相関テクスチャはなく,ここでも3DMark03の3Dゲーム系テストと同様に,Volari Duoのデュアル効果が理想的に発揮されたようだ。
 プログラマブルシェーダの負荷が小さいシーンを集めて構成されたSplinter Cellベンチは,最近のGPUではどれもスコアが高くなる傾向にあるが,ここまでメインストリームクラスGPUを引き離せたのはVolari Duoアーキテクチャが効果的に働いた結果と見るべきだろう

 

Splinter Cell(1024×768/32ビットカラー)

  SCENE1 SCENE2 SCENE3 TOTAL
Volrai Duo V8 Ultra 44.354019 41.199967 40.27396 125.827946
DeltaChrome 23.395511 18.777278 20.72852 62.901309
GeForce FX 5600 24.031234 19.871595 29.375296 73.278125
RADEON 9600PRO 32.699284 26.262549 36.029657 94.99149
GeForce FX 5950Ultra 44.116688 41.680025 42.287146 128.083859
RADEON 9800PRO 42.173194 37.933622 39.277721 119.384537

 

ここまでの結果を見る限りはVolari Duoアーキテクチャは有効に働いているように思える

 

トゥームレイダー 〜美しき逃亡者〜ベンチマーク(1024×768/32ビットカラー)
  〜デュアルGPUアーキテクチャが仇になる瞬間

 「トゥームレイダー 〜美しき逃亡者〜」(以下,TR6ベンチ)のVer.49にあるベンチマークモードでの計測。
 Glow効果をOnにすると,DeltaChromeではリセットがかかってしまうので,これを外しての測定を行っている。なお,より詳細な設定状態については,下の設定画面を参照してほしい。
 結果は,Volari Duoの惨敗。メインストリームクラスGPUにすら完膚無きまでに叩き潰されている。
 まず,TR6ベンチでは,水面の映り込み処理などに3Dシーンのテクスチャへのレンダリング(レンダーターゲット)を行っている。そして,今回行ったテストでは,最も重い「このレンダーターゲットを毎フレーム生成する」設定にしたのだが,これはVolari Duoにとっては最悪ともいえる設定となる。
 というのもVolari Duoは,毎フレームごとにテクスチャが更新されてしまうので,それこそフレームそれぞれのVolariに,専用接続されたビデオメモリの整合性を整えるための処理に追われてしまう。つまり,各Volariの並列分散レンダリングによるオーバーラップ描画作戦がまったく生かされないレンダリングスタイルになるのだ。いってみれば,ただ交代でVolari#1とVolari#2が描画を行っているだけの状態だ。
 それにしてもこのパフォーマンスの落ち込みは普通ではない。
 どのようなスタイルでビデオメモリ整合処理が介入するのかは,資料がないので推測するしかないが,Volari#1とVolari#2が交互に描画をするだけでなく,その間にビデオメモリ整合処理が入り,これがボトルネックになっている可能性は否定できない。
 少なくとも現段階では,「このシナリオにハマるとVolari DuoはメインストリームクラスGPU以下の性能になる可能性がある」と見ておくべきだろう。
 ちなみに,TR6のオプション設定で,このレンダーターゲット効果関連をキャンセルして実行してやると,途端にパフォーマンスが向上する。すべてキャンセルした状態では55.763542fpsをマークしたことを付け加えておこう

TOMBRAIDER AOD(1024×768/32ビットカラー)

  TOMBRAIDER AOD
Volrai Duo V8 Ultra 6.218835
DeltaChrome 21.20085
GeForce FX 5600 11.65202
RADEON 9600PRO 28.281946
GeForce FX 5950Ultra 38.737461
RADEON 9800PRO 49.766041

 

 初めはDirectX 9のソフトウェア・リファレンス・ラスタライザが始動したのかと思ったが,それよりもフレームレートは高い。テストの最中に,水色の生ポリゴンが表示される現象がときどき発生した。
 TR6ベンチのセッティング例#1#2#3。GeForce系で有利不利が出ないように"nVidia Shadow"(GeForce系で利用できる)と"Pixel Shader2.0 Shadow"(GeForce系で利用できない)はオフにしている

 

FINAL FANTASY XI for Windowsオフィシャルベンチマーク ソフト2
 〜ドライババグのために実力発揮できず?

 ジオメトリ処理は高負荷だが,ピクセル処理系はマルチテクスチャリング主体で,複雑なシェーダプログラムは動いていないFFベンチ2。タイプとしてはUT2003ベンチに近いので高スコアを期待していたのだが,メインストリームクラスGPU以下のスコアに落ち込んでしまった
 原因は筆者にも分からず。何度実行してもスコアが1500台しか出なかった。
 なお実行中の動作を観察していると,レンダリングしたフレームを多重に重ねて見せるブラー効果のシーンが非常に重くなる現象に気づいた。また,そのブラー映像に砂嵐のようなゴミが入ることも多々あった。ブラー映像の生成は前フレームをテクスチャ化したものを活用するので,このテストでもビデオメモリの整合処理関係の遅延が出たのかもしれない。
 あるいは単純にドライバのバグがパフォーマンスに影響している,ということなのかもしれないが。

FFベンチ2(ハイクオリティ)

  FFベンチ2
Volrai Duo V8 Ultra 1520
DeltaChrome 3268
GeForce FX 5600 2756
RADEON 9600PRO 3433
GeForce FX 5950Ultra 4057
RADEON 9800PRO 4006

 

「Volari DuoでFFXIを」と考えている人は,ドライバがバージョンアップされるまで待ったほうがいいかも……

 

AquaMark3(デフォルト)
 〜3DMark03同様にハイスコアをマーク

 3Dグラフィックスの要素テストを,実際の3Dゲームエンジンの中で実戦的にテストしていくのが,AquaNox2エンジンベースのベンチマーク「AquaMark3」だ。
 AquaMarkとして表示されるトータルスコアは,全テストの平均フレームを100倍したものだが,これはRADEON 9800PROにピタリと付けるほどの好成績を残した
 各テスト結果を個別に着目しても,目立った低得点のテスト項目もない。このテストも動的なテクスチャ生成はないので,傾向としては3DMark03の3Dゲーム系テストGT1〜GT4同様に,Volari Duoの分散並列レンダリング機構がうまく機能したように思われる。

AquaMark3(デフォルト)

  AquaMark3 Dynamic Occlusion Culling High Particle Count Masked Environment Mapping Large Scale Vegetation Rendering Large Scale Terrain Rendering Vertex And Pixel Lighting 3D Volumetric Fog Complex Multimaterial Shader Massive Overdraw
Volrai Duo V8 Ultra 31092 48.48 19.06 38.27 19.58 34.52 38.04 43.26 33.55 22.83
DeltaChrome 19395 29.37 12.04 22.97 15.37 23.94 23.81 24.49 17.88 13.03
GeForceFX5600 17822 41.92 12.05 25.17 7.96 21.06 20.85 28.34 18.8 12.39
ATI RADEON9600PRO 24597 47.39 15.3 33.15 14.7 30.83 30.9 32.7 24.83 15.29
GeForceFX5950Ultra 37321 54.04 28.29 42.49 23.07 40 44.29 47.31 38.57 29.08
RADEON9800PRO 33152 48.76 25.55 38.41 25.62 34.23 38.6 39.31 32.93 23.01

スコアだけ見る限りは立派。とはいえ,あまりにもスコアが高いので,「もしかするとアグレッシブな最適化をドライバレベルでやっている?」と疑いたくなってしまうのは筆者だけではあるまい


まとめ〜Volari Duoはギャンブラーのために?

 各テストの解説部分では書かなかったが,正直なところドライバの安定性には一抹の不安を感じてしまった
 というのも,描画が乱れるときがあるだけでなく,PCがハングアップすることも多々あったためだ。ドライバのバージョンアップは頻繁に行われているようなので,安定性の獲得にはそう時間はかからないと思うが,裏を返せば,「初心者が,今すぐ手を出すことはないのでは」ということでもある。
 そして,パフォーマンス面。
 レンダリングをちゃんと分散して並行に行え,各フレームの描画処理がオーバーラップできた場合には非常に高いパフォーマンスが期待できる。今回の実験で,このXGIの理想論はなんとなくは実感できたと思う。
 しかし,この理想のパターンにハマらなかったときのペナルティは,TR6ベンチの結果を見ると,あまりにも大きすぎる気もする。
 理想のパターンにハマりやすいのは,あまり動的なテクスチャ生成を行わない2003年の前期くらいまでに登場したタイトルになりそうで,2004年に登場してくるタイトルに対応できるかは,現時点では予想もできない。TR6ベンチの結果を見る限り,先行きはそれほど明るくなさそうではあるが。
 "ギャンブル"。Volari Duoを短い言葉で表現するならばこうなるだろうか。4万円台後半もするビデオカードで,ほかのカードという選択肢も存在する現状では,これといって訴求力に乏しい気もする。

 最後に,今後のXGIのGPUのロードマップについても簡単に話しておこう。
 2004年後半から2005年にかけて,XGIは次世代Volari,XG45/46(開発コードネーム)のリリースを計画している。こちらはDirectX 9のプログラマブルシェーダ3.0仕様に対応したものになると予測されている。またXGIは,Volari DuoのデュアルGPUアーキテクチャは,「今後のGPUには必要不可欠なテクノロジ」と強くアピールしていることから,次期XG45/46シリーズでも採用される見込みだ。
 NVIDIAとATIがほぼ独占するPCゲーム界で,XGIにはS3と共に今後の活躍に期待したいものだ。

テストマシン環境
CPU Pentium4/1.6A-GHz(2.133GHz動作)
マザーボード ASUS P4B266
メモリ PC2100 SDRAM 768MB
ハードディスク SEAGATE ST313620A
Volari Duo V8 Ultra XGI試作カード
DeltaChrome S3試作カード
Radeon 9600PRO GIGABYTE GV-R96P128D
Radeon 9800PRO ATI純正カード
GeForce FX 5600 Albatron FX5600P TURBO
GeForce FX 5950Ultra eVGA e-GeForceFX5950 Ultra