9に対応した3Dグラフィックスベンチマークプログラム、「3DMark03」をリリースした。3DMarkシリーズはこの分野の定番とでもいえるものだけに、最新版のリリースと同時にダウンロードサイトにはアクセスが集中、ちょっとした騒ぎになったほどだ。筆者も、3DMark03を早速ダウンロードしたが、サーバの高負荷により176MBに及ぶプログラムの平均データ転送レートは7KB/secそこそこに過ぎず、ADSLもFTTHも関係ない有様だった。苦労してダウンロードした3DMark03だが、今回はメジャーバージョンアップということで、大きな変更が加えられている。4の4つのゲームを模した3Dグラフィックスシーンのフレームレートだが、そのほかにも(最終スコアに影響しない)様々なフィーチャーテストが盛り込まれている。1)は、コンバット系のフライトシミュレーションゲームを模したもの。ドイツ上空に侵攻したB-17爆撃機をMe109が迎撃する、といったシナリオだ。8.x互換のドライバがあれば基本的に動作する。7互換のハードウェアではCPUによるエミュレーションとなる。T&Lを用いるべきだろうが、それは過去のバージョンの3DMarkを使えば済む、という判断のようだ。1.1を採用したのだとも考えられる。Proxyconと名づけられた、宇宙空間を舞台にしたFPS(ファーストパーソンシューティング)を模したもの。Shaderをサポートしたグラフィックスチップが必要になる。1.1を用いることになっている。8.1がサポートするシェーダの中で最も高いバージョン(1.4)をサポートしたハードウェアの利点が数値として現れることになる。加えて、このテストの実行中にテクスチャデータのスワッピングが生じることを防ぐには、カード上に128MBのビデオメモリが必要となるため、同じグラフィックスチップでもメモリ搭載量が64MBのカードと128MBのカードの差を見ることができるハズだ。7世代のアプリケーション。Lairという名前のGT3は、技術的なレベルはGT2とほぼ同じ。アートワークが、ファンタジー世界を舞台にしたRPGを模したものになっている点が大きく異なる。あたりのポリゴン数が、GT2より増えている点も違いとなっている。Natureと名づけられたもの。SEではNatureは最終スコアに含まれていない)。2.0の機能が用いられている。1.4が使われている、という具合だ。これら4つのゲームテストの応用編として、GT1とGT3を低解像度(640×480ドット)でソフトウェアにより実行することで、CPUの性能を計測するCPUテストも実行される。Proでは結果をExcelにエクスポートすることが可能。2.0テスト、CPUとグラフィックスハードウェアのバランスをみるRagtrollテスト、初めてインプリメントされた3Dサウンドテスト(ハードウェアアクセラレーションのないAC'97ベースのサウンドではスキップされる)などがサポートされている。SDKのリファレンスラスタライザ(ソフトウェアラスタライザ)との比較で、イメージ品質を確認したり、テクスチャのフィルタリング品質を確認するツールも付属する。3DMark03は、FutureMarkのダウンロードサイトから無償で入手することが可能だ。上述した3DMark03の全機能を利用するには、有償のPro版を入手する必要がある。Pro版はCD-ROMで購入することができるほか、Webサイトでレジストレーションキーを購入することで、ダウンロードした無償版をPro版に変更することができる(追加のダウンロードは不要)。Browser(3DMarkの結果を表示するプログラム)がローカルで実行可能だったが、3DMark03では省略されてしまった。代わりにPro版には、3DMark03の結果をExcelにエクスポートする機能が加えられた。データの活用を考えるとこちらの方が便利ではあるのだが、単純にXLSファイルを吐くのではなく、3DMark03の中からExcelを呼び出し、そこにデータを貼り付けていく。そのため、事前にExcelをインストールしておかねばならないのが玉に瑕ではある(日本語版Excelにも対応)。9に対応した3Dグラフィックスベンチマークだ。9専用というわけではなく、古いハードウェアでも動作可能な内容となっている。8.1レベルのハードウェアとも思われる。9専用プログラムには市場性がないことと無縁ではないだろう。DX9」では決してない。2003年に(ゲーム)ユーザーが求めるであろうハードウェアと、そのハードウェアで期待される性能を測る目安となることが目的なのである。8/8.1)のサポートも必要だと思う。いう意味でも、3DMark03は有意義なプログラムだと考える。●3DMark03に対するNVIDIAの主張ところが、これに異議を唱えた会社がある。現在、デスクトップ向けグラフィックス市場でトップシェアを誇るNVIDIAだ。彼らの主張を要約すると、次のようになる。Benchmarkというが、3DMark03が示す性能指標は、ユーザーが現実のゲームから得られる性能と乖離している。3DMark03が採用しているグラフィックスエンジンは、現実のゲームに使われているゲームエンジンではない。Shaderの使用法は現実のゲームを反映したものとは言いがたい。1だが、事実としては、これはその通りである。Payneに使われたもの(MAX-FX)であったのに対し、3DMark03に使われているグラフィックスエンジンは現実のゲームとは直接関係しない。これはベンチマークの妥当性の裏づけという点でマイナスではあることは間違いない。Benchmark)であるのは確かだ。Benchnarkとアプリケーションベンチマークの両方が存在してきた。WinBench、後者の代表はWinStoneやSYSMarkなどである。このように2つが並存してきたのは、どちらか片方だけでは、システムの性能のすべての側面を判断できないからだ。あるアプリケーションを用いたベンチマークテストで性能が良かったからといって、他の(APIの使い方が異なる)アプリケーションでの性能まで良いとは限らない。Payneというゲームをしないユーザーには、リアリティがないことになる。これを克服するには膨大な数のアプリケーションでベンチマークテストを行なわなければならないが、それでは多数のハードウェアの比較は難しくなる。アプリケーションのバージョンアップという厄介な問題もある。Benchmarkの良いところは、APIを網羅的にテストできることだ。Benchmarkが示す性能は、現実のアプリケーションで示される性能に酷似する上、普遍的なものとなる。問題は、ユーセージモデルの設定が適切であるとのコンセンサスを得ることが極めて難しいこと、すなわち2の問題である。Shaderの使い方に多くの異議を唱えている。1.4を多用している点だ。1.3を用いていることを指摘している。9700PROこの指摘はある意味で正しいが、ある意味では不十分ではないかと思う。1.1/1.3を用いたアプリケーション)における性能を測るだけでよいとは思えないからだ。現在、ハイエンドのグラフィックスカードは5万円近くする。同じ価格でOSのライセンスがついた新品のPCが丸ごと買える時代、グラフィックスカードに5万円を投じるには、現在のアプリケーションだけでなく、将来のアプリケーションについても高い性能が約束される必要がある。現実のゲームを用いたベンチマークは、現実のゲームにおける性能を測るという点では望ましいが、将来のゲームにおける性能を示唆してくれるわけではない。9に対応した初めてのアプリケーションでもある。8.x対応ゲームでのベンチマークと、どちらが参考になるかは明らかだ。1.4を使っていないからだけではないだろう。NVIDIAの製品の特徴と関連するハズだ。8.1に完全対応したものではない。Shaderの最上位バージョンである1.4への対応が欠けている。8.0の時であり(いずれのバージョンも1.0)、NVIDIAのアイデアがMicrosoftに取り入れられたものと考えられている。Shaderは1.1、1.2、1.3、1.4の4バージョンが加わった。1.1は、いずれも1.0のバグフィックスを含むマイナーチェンジであり、ハードウェア的にはほとんど同一で済む。1.2~1.4は新たな拡張が加えられているが、1.2と1.3が1.1の発展形、すなわちNVIDIAのアイデアの延長線上にある(あるいはNVIDIAによる拡張)のに対し、1.4はATIのアイデアが取り入れられたものだと言われており、サポートしているのはATIのチップにほぼ限定されている。1.4を多用することが不満なのである。Tiシリーズはサポートしていない。1.1を使うことになるが、これは上述した通り、1パスに対して4パスとなるため、スコア的に不利になる(逆にATIには有利に働く)。1.4を採用したことは間違いだったのか。これは結論を出すのが難しい問いだ。8.1が定めている以上、何の問題もない。1.4を使ったゲームが登場しないとの保証もない。1.4を使ったことが間違いだとは言えないハズだ。その使い方(テストに占める割合)が適正だったかというと、やり過ぎだったかもしれない。Shaderテストでも用いられている(もちろんスコアにはカウントされないわけだが)。異議を唱えるのもおかしな話ではある。1.4の多用はそれが影響していることを匂わせているが、これが事実なのかどうか、筆者は判断することはできない。Shaderで考えねばならないのは、Microsoftの影響だ。1.4として取り入れたのか。Microsoftは優秀なアイデアがあれば、誰のアイデアであろうと取り入れる、と答えるだろう。それはそうに違いないが、単純にそうと思えない面もある。先日、和解するに至ったが、MicrosoftとNVIDIAはXbox用チップセットの価格でもめていた。NVIDIAはMicrosoftの値引きの求めに簡単に応じなかったのである。Microsoftが、NVIDIAだけが突出することを望まなかった(ATIに対抗勢力になることを望んだ)としても、不思議ではない(もちろん、これは筆者の邪推に過ぎないが)。1.1~1.3を使うのだということも言われている。FXも含む)もナンセンスということになってしまう。●NVIDIAのあせり今回、NVIDIAはかなり強硬に3DMark03に異議を唱えているが、筆者はこれはNVIDIAのあせりの表れではないか、という気がしている。FXは、本稿執筆時点においても店頭に並んでおらず、予定から1カ月ほど遅れている。FXには1グレードしかない、と述べていたことも異例だ。実際にはGPUのコアクロック、メモリバスクロックともに500MHzのUltra(当初発表されたもの)と、400MHzに落とした非Ultraの2バージョンがリリースされることになったが、Ultra版はかなり入手性が悪いようだ。FX搭載カードを販売するカードベンダだが、これ以上Ultra版の予約を受け付けられないこと、現時点でカードの出荷が3月9日になることを明らかにしている。1000が300MHz)のも奇妙だ。NVIDIAは公式にはTSMCの0.13μmプロセスに満足していると述べているが、実際には歩留まりがあまり良くないのではないかと思われる。これが同社にプレッシャーとなっていても不思議ではない。1000搭載カードもう1つ筆者が印象として感じているのは、NV30コアが本領を発揮するには、シェーダプログラム(DirectX)やフラグメントプログラム(OpenGL)が、同社のコンパイラであるCgを用いている必要があるのではないか、ということだ。Cgそのものは、DirectXとOpenGLの両方に対応したオープンソースのコンパイラだが、Cgで生成されたコードでしか性能が発揮できないというのは、現時点では行き過ぎではないかという気がする。どんなコンパイラを使うのか、どのようなコードを書くのかはISVの自由であり、どれが主流になるかはデファクトスタンダードの問題である。ISVがみなCgを使うというのであれば、NVIDIAに最適化されたコードを用いていないベンチマークテストの結果は、現実と乖離している、と言うことさえ可能だ。これを成り立たせるためにも、NVIDIAは必死で現在のシェアを守りにいく。今回の異議表明はその表れではないかと思う。筆者は標準ベンチマークとなるものが、そこまで特定のベンダに依存すること、デファクトスタンダードに依存することは望ましくないと考えている。ベンチマークテストの内容がシェアに連動することは、正常な競争を損なうからだ。いう意味で現在の大きな問題は、FutureMark以外にアップトゥデイトな3Dグラフィックスベンチマークを提供できないことにあるのかもしれない。個別にご回答することはいたしかねます。