大原雄介の「Sun Ultra 20 Workstation」レポート(3)

Quadro FX 1400の威力




 前回の記事掲載直後から、多くの読者からのコメントを頂いた。大まかにまとめると

・smbmountを使えばいいのではないか?
・netではなくmountじゃないのか?
・gimpの遠近法を使えば変形できるのでは?

というあたりが主な内容である。これらについての追試は現在行なっている最中である。ただ、Sunがこの1月、新しいSolaris 10(01/06版)をリリースしており、これにあわせてSolarisの再インストールを行なったところ、環境が変わってしまった。このため、目下色々トライ中である。上に頂いたコメントにはキチンとレポートを出したいと思うので、もう暫くお待ちいただきたい。そんなわけで、今回はWindows編である。

●普通でないところ

Quadro FX 1400

 前回までのレポートで書いた通り、基本的にはUltra 20はPCであり、WindowsやRedHatもサポートされる。通常レビューするPCと異なる点を強いて挙げると、ビデオカードに「Quadro FX 1400」が搭載されていることだろう。Quadro FX 1400とは、簡単に言ってしまえばGeForce 6800 GTのOpenGL対応強化版といったものだ。動作周波数とかメモリなどはGeForce 6800 GTと同一で、SLIを利用できる事も同じ。ただし両者に互換性は“基本的には”無い。

 基本的には、というのは、実はGeForce系のボード上のチップ抵抗の位置を入れ替えるとQuadroに化ける、なんて改造を時々見かけるからで、おそらくは(かつてのAthlonにおけるGoldFingerのごとく)あるピンへの入力信号のLow/Highを入れ替える事で、GeForceとして動くかQuadroとして動くかが決まる、というあたりではないかと想像される。

 では、チップが変わらないとすると何が違うかといえばドライバである。GeForce系でもForceWareにOpenGL ICDが含まれているので、OpenGLのアプリケーションはきちんと動作するはずであるが、Quadro系では「動作検証」が追加される。

 例えばコチラのページには、さまざまなOpenGLアプリケーションベンダーが、動作検証を行なったドライババージョンが明記されている。こうした検証作業をきちんと行なっているのがQuadroということであり、GeForceとの価格差になるわけだ。業務用途が想定されるQuadroの場合、「出力が正しく意図した通りになっているか」が非常に重要視されるわけで、「バージョンによって出力される画像に微妙な違いがある」事が許される(最近はあまり無いが、以前は結構激しかった)GeForce系の作法は通用しないわけだ。

 ただ、違いが単にそれだけだとしたら、やはり価格差を正当化するのは難しいわけで、多少なりともOpenGLでは高速化される“と言われている”。これが本当かどうなのか、以前から気になっていたのだが、折角Ultra 20にQuadro FX 1400が入っているので、試してみようというのが今回の趣旨である。

●インストール&普通に使ってみる

 インストールには何ら珍しい点は無かった。添付されてきたSupplemental CDにはSolaris用と一緒にRedHat/Windows(32/64bit)のドライバが入っており、これでチップセットドライバをインストールすれば完了である。流石にWindowsがUltra 20であることを認識したりはせず(写真1)、ごく普通のWindowsマシンとして立ち上がる。

 添付のドライバはやや古い71.84(写真2)が、動作には支障ない。ちなみにPoweStripをインストールして動作周波数を見てみると、コア350MHz/メモリ600MHzとなり、どうみてもGeForce 6800 GTのそれである(写真3)。

【写真1】ごく真っ当な表記。珍しい部分は見当たらない 【写真2】最新のものはForceWare 81.67である 【写真3】ついでにパイプライン数とかまで出てくれれば更に判りやすいのだが

 さて、この状態で簡単にテストをしてみることにした。Quadro FX 1400だけでは寂しいので、同じNVIDIAのGeForce 7800 GTX(リファレンス)と、ELSA GLADIAC 743 GT(GeForce 6600 GT)を用意し、差し替えてテストを行なってみた。細かなテスト環境は表1に示す通りだ。

【表1】テスト環境
ビデオカード Quadro FX 1400
(標準添付品)
GeForce 6600GT
(ELSA GLADIAC 743GT)
GeForce 7800GTX
(NVIDA Reference)
VGA Driver ForceWare 71.84 ForceWare 81.98
CPU Opteron 152(2.6GHz/1MB L2)
マザーボード 専用(TYAN S2865)
nForce Chipset Driver 6.66(標準添付品)
メモリ PC3200 1GB Registered ECC×2
HDD Seagate Barracuda 7200.8 250GB SATA(標準添付品)
OS Windows XP Professional 英語版+SP2

 まずSYSMark 2004の結果は表2に示す通りである。Quadro FX 1400が最高速になっているが、詳細を見ても「Quadro FX 1400の何かが突出してが高速」なわけではなく、全般的に少しづつ高速という感じだ。GeForce 6600 GTとGeForce 7800 GTXではさしてスコアが変わらない事から判るとおり、ビデオカード側の問題ではなさそうだ。考えられるのはドライバの違いだろう。GeForce用のForceWareの方がチューニングが進んでおり、CPUにより負荷が掛かる、というあたりではないかと思う。

【表2】SYSMark 2004
ビデオカード Quadro FX 1400 GeForce 6600GT GeForce 7800GTX
SYSmark 2004 Rating 216 213 213
Internet Content Creation 239 238 238
Office Productivity 195 190 191

 これを裏付けるように、3DMark05(表3)、3DMark06(表4)のスコアでQuadro FX 1400の成績はかなり沈み込んでいる。GeForce 7800 GTXに及ばないのは当然として、GeForce 6600 GTよりも低いというのは、普通ではちょっと考えにくい。Quadro用ForceWareも一応Direct3Dはサポートしており、チューニングはやや低めということなのかもしれない。

【表3】3DMark05
ビデオカード Quadro FX 1400 GeForce 6600GT GeForce 7800GTX
640×480 4278 4732 9026
800×600 3795 4203 8578
1,024×768 3114 3632 7806
1,280×1,024 2387 2899 6756
1,600×1,200 1881 2285 5877

【表4】3DMark06
ビデオカード Quadro FX 1400 GeForce 6600GT GeForce 7800GTX
640×480 2403 2646 5488
800×600 2103 2370 5111
1,024×768 1695 1999 4594

●OpenGLで色々試してみる

 では、肝心のOpenGL系ではどうかということで、まずはSPEC Viewperf 8.1の結果を表5に示す。御覧の通り、圧倒的な性能差である。これだけ見ていると、「Quadro系はやはりOpenGLが高速」という結論にならざるを得ない。それにしても、グラフィックチップの素性だけ見ていると、ここまで高速化される理由が見当たらないので、よほどドライバのチューニングが進んでいる(もしくは、提供される関数が多い)と考えなければいけない。

【表5】SPECViewPerf
ビデオカード Quadro FX 1400 GeForce 6600GT GeForce 7800GTX
3dsmax-03 38.40 18.38 20.80
catia-01 34.01 13.88 14.22
ensight-01 22.16 11.91 14.04
light-07 28.90 11.91 14.04
maya-01 69.86 21.66 23.11
proe-03 53.24 18.31 18.00
sw-01 25.07 15.08 15.93
ugs-04 31.57 6.489 10.27

 同様に、やはりOpenGLを使う代表例としてCINEBENCH 2003 v1を実行してみた結果が表6である。CPUレンダリングがメインとなる部分(表7の上3項目)を見ると大して違いは無いのは当然として、「Shading(OpenGL Hardware Lighting)」を見るとここでは大きな性能差がついている。ただ大きいとはいえ、表5の圧倒的な性能差ほどではない。

【表6】CINEBENCH 2003 v1
ビデオカード Quadro FX 1400 GeForce 6600GT GeForce 7800GTX
Rendering (Single CPU) 368 366 367
Shading (CINEMA 4D) 435 435 436
Shading (OpenGL Software Lighting) 1865 1941 1974
Shading (OpenGL Hardware Lighting) 4305 3207 3567
OpenGL Speedup 9.90 7.37 8.18

 3つ目に、GLClock 6.0 Beta 6.0を実行してみた。これは川瀬 正樹氏によるアプリケーションである。これをXGAサイズで実施した結果をまとめたのが表7だ。ちょっと数字がインフレを起こしている(なにせ基準値がPentium II 233MHz+RIVA TNT 16MBでのスコアだ)関係で見にくいかもしれないが、ご容赦いただきたい。

【表7】GLClock XGA
ビデオカード Quadro FX 1400 GeForce 6600GT GeForce 7800GTX
1.Per-Vertex Lighting Mark. 8,993.54% 8,907.48% 15,241.51%
2.Per-Vertex Lighted Texturing Mark. 7,558.63% 8,029.72% 14,335.38%
3.Texture Filtering Mark. 5,914.84% 6,344.29% 12,299.65%
4.Environment Mapping Mark. 5,325.86% 6,173.94% 14,253.01%
5.Super Sampled Blending Mark. 3,256.19% 3,368.81% 8,431.36%
6.Maximum Triangles Mark. 7,952.07% 7,126.72% 13,173.54%
7.OpenGL Practical Rendering Mark. 8,877.46% 9,435.85% 15,664.19%

 ここではまるっきり数字の傾向が異なっている。最速がGeForce 7800 GTXであり、Quadro FX 1400はというと、GeForce 6600GTにも劣る結果になっている。この傾向は先の表3~4、つまりDirect 3Dの性能にかなり近いものである。ここから考えられるのは、ドライバ自体の描画性能は(Quadroだからといって)さして変わっておらず、あとはサポートするAPIの数が異なっているのではないかということだ。Quadroは多くのAPIを使えるから、これをフルに活かせるSPECViewPerfでは性能がグンと上がり、一方GeForce系ではサポートするAPIが少ない関係で、ソフトウェアエミュレーションが多用され、結果として性能が上がらないという構図だ。

 これを確認するために、4つ目としてOpenGL Benchmark 1.6を実施した。このベンチは、以前はこちらで配布されていたのだが、現在は配布が中止になっているようで入手できない。それでも、OpenGLのファンクションを比較するのに、他に適切なベンチマークも無いので、これを使わせていただく。

 さて、本来このソフトはベンチマークなのだが、2Dに関しては肝心のスコアが一部サチレーションを起こして結果が取れないので、3Dの結果のみを表8に示す。このベンチマークの場合、基準機(SGI ONYX RealityEngine II)のスコアを100とした場合の相対性能を示しているが、ほぼ同一の性能と言っても差し支えないほど性能差がない。2Dではもう少しバラツキが見られるが、これは概ね表3~4に近い傾向を見せており、つまりファンクション毎の性能差はあまり無いという事になる。

【表8】OpenGL Benchmark (3D)
ビデオカード Quadro FX 1400 GeForce 6600GT GeForce 7800GTX
swap_buffer 99.49 99.45 99.46
lines 100.24 100.33 100.36
lines fog 99.72 99.72 99.78
lines smooth 99.75 99.75 99.78
points 199.36 199.27 199.27
points fog 199.11 198.95 198.96
wire 199.00 199.02 199.04
wire fog 198.97 199.00 199.02
polygon color smooth 198.96 198.99 199.01
polygon color 198.98 199.00 199.00
polygon color fog 198.95 198.97 198.99
vertex color 199.35 199.43 199.44
vertex color fog 199.06 199.09 199.10
stencil buffer 199.34 199.41 199.43
accumlation buffer 192.47 190.58 196.72
blur 292.17 294.63 294.90
flat shading 199.43 199.56 199.51
smooth shading 199.73 199.80 199.82
spot light 198.98 199.01 199.02
T-Map GL_CLAMP fast 199.16 199.62 199.64
T-Map GL_CLAMP real 199.00 199.02 199.04
T-Map GL_REPEAT fast 199.03 199.06 199.10
T-Map GL_REPEAT real 199.66 199.38 199.40
total 189.56 189.62 189.92

 であれば、サポートされるファンクションに違いがあるか、ということで一覧を比較してみた。表9がGeForceのみでサポートされるファンクション、表10がQuadroのみでサポートされるファンクション、表11が両方でサポートされるファンクションである。どうみても、Quadroが多くファンクションをサポートしているとは言えない(むしろ少ない)状況である。

【表9~11】GeForce/Quadroでサポートされるファンクション

 こうなると、解釈はただ1つ。「アプリケーションがドライバを見ている」という事になる。GLClockやOpenGL Benchのように、サポートされている全てのファンクションを使える場合、GeForce系が高速に動作する。が、SPECViewPerfを構成するアプリケーションやCINEBENCHの場合、ドライバがQuadroならばファンクションを使うが、GeForceならばソフトウェアエミュレーションを行なっていると解釈するのが一番自然だし、他に考えようがない。

 判然としないかもしれないが、冷静に考えればこれはベンダーからは当然の事である。ドライバが「そのファンクションをサポートしている」と返しても、正しく実装されているかどうかは判らない。そこで「間違った表示をしてもそれはドライバの問題だ」とはアプリケーションベンダーは言えないわけで、そこで「怪しいものは使わない」というポリシーを結局貫かざるを得ないということだろう。そして、Quadroというブランドは、こうしたベンダーに対してNVIDIAが描画品質/機能をコミットしている結果というわけだ。

●ということで

 Ultra 20がわざわざQuadroを搭載する理由が、改めて理解できた気がするベンチマーク結果であった。ビジネスアプリケーション(それもCADやモデリングといったエンジニアリング用途)を使う分には非常に効果的であり、これはUltra 20のターゲットに見事に即していると思える。

 しかし同時に、一般ユーザーには無縁であり、ビデオカード抜きのセットを購入して、別にビデオカードを追加するほうが幸せになれるだろう。折りしもぷらっとほーむのキャンペーンが今年3月31日まで延長されており、もう少し購入を悩む猶予が出来た事になる。これでHDD用ブラケットが単体購入できたら、もう何にも言う事はないのだが。

□サン・マイクロシステムズのホームページ
http://jp.sun.com/
□Sun Ultra 20 Workstationの製品情報
http://jp.sun.com/products/desktop/ws/ultra20/
□関連記事
【2月7日】大原雄介の「Sun Ultra 20 Workstation」レポート(2)
http://pc.watch.impress.co.jp/docs/2006/0207/ws02.htm
【2005年12月26日】大原雄介の「Sun Ultra 20 Workstation」レポート(1)
http://pc.watch.impress.co.jp/docs/2005/1226/ws01.htm

(2006年2月14日)

[Reported by 大原雄介]


【PC Watchホームページ】


PC Watch編集部 pc-watch-info@impress.co.jp ご質問に対して、個別にご回答はいたしません

Copyright (c) 2006 Impress Corporation, an Impress Group company. All rights reserved.