中央のATIテクノロジーズInc.のトシ・オクムラ氏がRADEON X800の詳細を解説した
|
ATI RADEON X800は実は連休中の5月4日にATI本社から発表されていたATIの最新GPUだが,5月11日に国内発表が行われた。同時にそれを使ったビデオカードの新製品も発表された。今回発表されたのは,
ATI RADEON X800Pro
ATI RADEON X800XT Patinum Edition
の2種だ。両者でチップコア自体は同じものが使用されている。ATIが「世界最速,最強のVPU」と豪語するだけあって,非常に強力なチップとなっている。まずはスペック表を見ていただきたい。
左はATIの資料による従来製品との理論性能の違い。右は実際のベンチマークでの性能差(緑色のグラフはGeForce6800と思われる)
|
|
|
|
|
|
|
|
|
表:スペック比較
|
|
ATI RADEON X800XT
|
NVIDIA GeForce 6800 Ultra
|
ATI RADEON 9800XT
|
NVIDIA GeForceFX 5950 Ultra
|
プロセスルール(μ)
|
0.13
|
0.13
|
0.15
|
0.13
|
トランジスタ数(個)
|
1億6000万
|
2億2000万
|
1億1000万
|
1億2500万
|
コアクロック(MHz)
|
500
|
400
|
412
|
475
|
メモリクロック(MHz)
|
550
|
550
|
365
|
475
|
メモリ帯域(GB/s)
|
35.2
|
35.2
|
23.4
|
28.3
|
VertexShaderパイプライン数
|
6
|
6
|
4
|
3
|
PixelShaderパイプライン数
|
16
|
16
|
4
|
8
|
頂点操作レート(Mtriangle/s)
|
750
|
600
|
412
|
356
|
PixelFillRate(Gpixel/s)
|
8
|
6.4
|
3.3
|
3.8
|
ATI RADEON X800シリーズは最大16本のレンダリングパイプラインを持ち,VertexShader6基にDDR3メモリ対応と,先に発表されたNVIDIAのGeForce6シリーズとよく似たスペックを持った製品である。海外サイトでのベンチマーク結果を見ても,多少得意不得意はあるものの,ほぼ互角の性能を有しているようだ。ATIのWebで発表されている情報では,オ−バークロックしたPentium4システムで3DMark03スコア15738というベンチマーク結果を叩き出している(コア715MHz/メモリ639MHz時)。これはドイツのオーバークロック専門企業(?)がエンジニアリングサンプルカードを使って出した記録だ。
最高スペックの800XTではピクセルパイプライン16本,800Proで12本,800SEで8本となっている。コアクロックも520MHz,472MHz(SEは不明)と変えてハイエンドからローエンドまでをカバーする。おそらくPROクラスでさえ現行のハイエンドチップの1.5倍くらいの性能となるだろう。XTの出荷は5月21日から,Proは5月4日ということで,ちょうど今日あたりから秋葉原には出回り始めたようだ。
さらにローエンドのピクセルパイプ8本バージョン(ATI RADEON X800SE ?)もラインアップに加わるかもしれない。現状では製品化は未定とのこと。
製造プロセスは0.15μから0.13μルールに縮小された。これにより,単純計算で同トランジスタ数で面積比38%縮小することになる。トランジスタ数は33%増なのでダイサイズはほぼ同じだ。
対する競合製品のGeForce6ではプロセスルールは同じでトランジスタ数が激増している。一概にはいえないのは承知だが,X800のほうが使用ダイサイズはやや小さく,歩留まりもよいと思われる。これは価格に反映されてくるだろう。
GeForce6800で奇妙なのは従来製品より動作クロックを下げていることだった。複雑化したプロセッサの安定性か,発熱のためか,または消費電力の問題か,将来的な製品展開への余裕を残すためか,理由は不明だ。プロセスを縮小したX800では動作クロックも引き上げられている。
動作クロックは25%上昇しているが,消費電力や発熱が極端に上昇したりはしていない。RADEON 9800XTの65〜75Wの消費電力に対して,X800PROはアイドル時38.45〜高負荷時67.48W程度,X800XTで58.16〜67.54Wと,消費電力は9800XTより低くなっているという。これは大がかりな冷却ファンや特別な電源を必要としないということも意味している。高性能は魅力でも480Wという大がかりな電源ユニットを要求するGeForce 6800Ultraに対して躊躇していた人にとってはまさに福音だ。X800はコンパクトスペースのPCにさえ搭載可能となるとされている。
すでにコア715MHzという高クロックで動作された実績から見ても,まだまだ余力を残していると思われる。
左はRADEON X800のブロック図。右はPixelShader部。4基のPixelShaderが1ブロックになっており,これが4つある
|
|
|
|
|
|
■キーワードはHigh Definition(高解像度) ATI RADEON X800はすべての機能をONにしても最高解像度で高速にゲームを実行可能にするためにさまざまな新技術が使われている。ここではその技術的な特徴を見てみよう。
●0.13μ Low-k Copper配線 X800チップの製造にはMobility RADEON 9700で採用されたLow-k層間絶縁膜技術が使用されている。これは微細化したチップ内配線を効果的に絶縁するための技術で,配線遅延の回避による性能向上や動作クロック上限の引き上げが可能になり,チップサイズも小さくでき,リーク電流を抑えた低消費電力動作などよいことずくめの次世代半導体技術だ。
同じ0.13μといっても,TSMCのFabを使って製造されるX800はIBMのFabを使って作られるNVIDIAのGeForce6とはこの点で大きく異なる。集積度や技術的に先行されているにもかかわらず,GeForce6に対するX800の優位性が目立つのはこのLow-k技術によるところが大きいといえるだろう。
●SmartShader HD SmartShaderはATIのShader技術の総称だが,高解像度への指向性を強めたという意味でHDの名前がついている。メモリの帯域幅が増えたこと,ピクセルエンジンが16基装備されたことなどで基本性能は大幅に強化されている。VertexShader,PixelShaderの格納可能命令数も上がっており,これまでよりも高度な画像処理が可能になっている。
Double Crossというデモでは,近距離と遠距離でフォーカス効果を出すDepth of field,宝石の複雑な反射屈折などの効果が確認できる。
フレームバッファとテクスチャバッファなどに同時に書き込みを行うMRT(Multi Render Target)や高精度演算によるHDR(High Dynamic-Range Rendering)なども可能になっている。また,大理石のように半透明な物体内での光の拡散などをシミュレートしたSubsurface Scatteringなども可能だ。これらはGeForce6のデモでもアピールされていた効果だ。
画面左上:Double Cross内で見られるDepth of Fieldの例。奥行きがぼけて遠近感が強調される
画面中央上:宝石の内部,外部面の反射,屈折など複雑な処理が行われている
画面上右:ソフトシャドウの例。喉にかかる顔全体の影や髪の毛の影が柔らかく表現されている
画面左下:不透明な石像から大理石のような半透明の像に変化するデモ
画面中央下:ディスプレースメントマッピングの例
画面右下:非常にハイコントラストな画像から
|
|
|
|
|
|
Anisotropicフィルタの例
|
●HyperZ HD ポリゴンのレンダリングの際には非常に多くのメモリアクセスが発生する。描画時に回避できないのがZバッファへのアクセスだ。メモリアクセスは描画処理のボトルネックになるので,少しでも軽減させることができれば全体的な性能アップにつながる。
HyperZは基本的にZバッファを圧縮する技術だが,カラーバッファに対しても適用される。これが非損失で最大1/6にまで情報量を下げることができるようになった。これでバスをより有効に使用できる。
●SmoothVision HD アンチエイリアスを行うSmoothVisionもバージョンアップされている。アンチエイリアスの基本はマルチサンプリングだ。非常に多くのメモリアクセスを必要とするのだが,HyperZ HDの効果とあいまって,メモリアクセスに余裕ができ,またエンジンやメモリ自体も強化されているため,アンチエイリアス性能は大きく向上している。
特にAnisotoropicフィルタの品質はすばらしい。アンチエリアシングではローテートグリッドなどのサンプリングで縦横の目立つエリアシングを防止できるほか,階調変化にガンマ補正を行うこともできる。
そのほかCentroidサンプリングやフレームごとにサンプリングパターンを切り替えて2X AAで4X AA並の画質を実現するTemporalサンプリングなどの機能が加わっている。
●3Dc 3Dcはノーマルマップで使用することを前提としたテクスチャ圧縮の新アルゴリズムだ。ノーマルマップはバンプマッピングで貼り付ける凸凹用のファイルだが,低ポリゴン数のまま画像のディテールを追加するには絶好の技術だが,クオリティの高い絵を出すためには,非常に大きな画像ファイルを用意する必要があったため,使いどころの難しい技術でもあった。使用するのはx,y,z各8ビットのベクトル情報を画像化したものだ。これらは32ビット画像として格納されるので8ビット分無駄なうえ,実際にはx,yだけの情報で事足りる。さらに最大値と最小値の間で4ビットの量子化を行い,1/4の情報量にまで圧縮する(最大値,最小値情報が加わるので1/4より若干大きくなるが)。従来使われていたDXTCでは4×4ドットの四角形領域でその内部でよく使用される色を中心に近似する圧縮アルゴリズムが使われていたが,比較的滑らかな変化の多いノーマルマップでは誤差が大きくなりがちだった。3Dcを使うことで,1/4という非常に少ないデータ量で高品位なマッピングが使用できるようになった。
3Dcはオープンな技術として提供されるので,今後Direct3Dの標準に組み込まれるか他社でも採用される可能性は高い。ゲームタイトルのほうでは,すでにHalfLife2やSerious Sam2,Tribes Vengeance,Sid Meier's Pirates!,darkSectorなどで使用されることが発表されている。
左は3Dcと従来のDXTCによるノーマルマップ圧縮の違い。中央はノーマルマップは法線の情報を貼り付けて,ディテールを作り出す。右は3Dcを使用して高解像度のノーマルマップを適用したところ(画面内左部分)。画面内右部分はは通常解像度の適用例
|
|
|
|
|
|
●VideoShader HD VertexShader/PixelShaderなどを使ったビデオエフェクトとして,ノイズ消去やフレームレート変換,ブロッキングノイズ消去,スキャンライン倍速変換などを行うことができる。
また,MPEG1/2/4などのビデオデコード/エンコーディングにも対応している。GeForce6ではビデオ処理は専用ユニットでほぼ対応していたが,X800ではPixelShaderで対応することになる。3Dゲームをやっている最中にビデオエンコードを行うか? というとそんな人はまずいないだろう。ビデオエンコードなどを単独で使う人にはどちらでも関係ない。しかし3Dエフェクトを使ったビデオ処理とエンコードを同時に行うというビデオ編集機材としての用途では,独立したユニットを使ったGeForce6のほうがパフォーマンスがよいと思われる。GeForce6では標準対応は謳っていなかったWindows Media Video9にも対応している。
■ShaderModel 2.0 Extended対応 X800はGeForce6のトピックのひとつであったShaderModel 3.0には対応していない。対応しているのはShaderModel 2.0 Extendedということになる。実際にはShaderModel 2.0 Extendedとして定義されているものよりさらに拡張されているようだが,とりあえず3.0ではない。とはいえ,これまでの機能紹介を見ても,GeForce6とさほど変わらないことができるというのはおわかりだろう。
ShaderModel2.X対応ということでダイナミック分岐などはサポートされていない。最大の違いはその辺りだ。ダイナミックな制御構造が使えれば,ほぼあらゆる処理が可能になる。その可能性は計り知れないのだが,現状のゲームではもちろんShaderModel 3.0に対応したものは存在せず,ShaderModel 2.0に対応した部分でさえさほど多くはないというのが実態である。
格納可能な命令数は
VertexShader 65280
PixelShader 1536
である。
65536に256だけ足りない65280とか1536という数値も奇妙な感じだが,65280のほうはATIに聞いてみてもよくわからないとのことだった。1536は,PixelShaderはColor関係で512命令,α関係で512命令,テクスチャで512命令の合計ということになっている。条件分岐が動的にできないので簡単なループ程度しか作れないものの,実行命令数はここに挙げた静的な命令数以上のものとなる。
ShaderModel 3.0はマイクロソフトとNVIDIAが中心に策定されてきた規格だ。現時点でATIが対応できないのはしかたないのかもしれない。できるならば,ATIにはNVIDIA製品をよく研究して互換性の高い製品を出していただきたいものだ(ShaderModel 3.1とかになりそうな予感もあるのだが)。
現実にはゲーム内でShaderModel 2.0が使われている割合でさえまだそう高いものではない。現状のゲームや当分の間は新作ゲームでもShaderModel 3.0が使われることはないだろう。ただし,そういったものに最適化されたゲームが登場したきたなら,表示品質やパフォーマンスで差がつくことが考えられる。それがいつかということになると来年以降かといった感じなので,その頃にはビデオカードも完全に世代交代していることだろう。なにも現時点で対応ソフトのないハードを導入することはないという考え方もある。X800は現行世代のゲームと年内あたりに発売されるゲームを最高に楽しむには最適なビデオチップかもしれない。 (中野修一)