【コラム】

後藤弘茂のWeekly海外ニュース

次のSlot 2 MPU“Tanner”はハイエンドワークステーション狙い?


●Xeonの死角

 米Intelは、Pentium II Xeonプロセッサで、これまで手が届かなかったハイエンドマーケットをいよいよ本腰を入れて狙い始めた。ということになっている。ところが、Pentium II Xeonのターゲットをよく見てみると、確かにサーバー市場はその通りだが、ワークステーション市場では、必ずしもそうした展開になっていないことがわかる。

 サーバー市場では、Pentium II Xeonは、現在RISCマシンが占めているローエンドより上のセグメントを完全(企業規模のハイエンドサーバーを除いて)に射程に入れた。Intel自身も、サーバー市場の開拓には、かなりの意気込みと自信を見せている。

 ところが、ワークステーション市場では、大きな死角がある。それはハイエンドワークステーション市場だ。IntelはワークステーションにもPentium II Xeonを、と言っているが、どうも市場の下半分に力点が来ているように見える。ワークステーション市場は、現在2分化しており、PCに毛が生えた程度のワークステーションのニーズが増大する一方で、ハイエンドのエンジニアリングワークステーションはますます高性能化が要求されている。そして、Pentium II Xeonはこの2極のうち、下の『PCより上のクラス』ワークステーションをメインターゲットにしているように見える。つまり、ハイエンドワークステーションは、一応ターゲットには入っているが力が入っていないのだ。

 Intel日本法人も、この点はあっさりと認めている。「それは当然のこと。ハイエンドワークステーションでは浮動小数点演算の性能が求められるが、P6コア(PentiumPro/Pentium II系MPUコア)のこの面での性能は、残念ながらまだRISC系MPUには及ばないからだ」とPentium II Xeon説明会の際に説明している。


●浮動小数点演算が弱点のIntel系MPU

 Intelのx86系MPUは、もともとRISC系MPUと比べると、整数演算性能に対して浮動小数点演算性能が低い。これは周知の事実で、驚くには当たらない。つまり、Pentium IIがRISC系MPUと互角かそれ以上の戦いをできるのは、整数演算に限られているわけだ。この弱点は、整数演算しかほぼ使わないサーバー用途の場合は問題がないが、科学技術演算やシミュレーション、高度な3Dグラフィックスなどで浮動小数点演算を非常に多用するハイエンドワークステーション用途の場合は、RISCワークステーションとの競争上大きな問題になる。そのため、現在のPentium II Xeonでは、ハイエンドワークステーション市場にあまり力点が置かれていないのだ。

 だが、それはIntelがこの市場をそのまま見過ごし続けるという意味ではない。インテル日本法人では「その市場は次のプロセッサで狙うことになるだろう」と言う。

 問題は、この『次のプロセッサ』は、一体どのMPUにあたるのかということだ。Intelは、この市場に向けて、まず'99年前半に「Tanner(タナー)」を、そしておそらく'99年後半にTannerの0.18ミクロン版を投入する。そして、2000年中盤にはIA-64プロセッサ「Merced(マーセド)」を投入する。Mercedになれば、浮動小数点演算命令は現行のRISC以上に強化されるので、この市場をねらえるのは間違いがない。しかし、Tannerはどうなのだろう?


●Tannerのカギは新命令群

 ここで問題になってくるのは、Tannerに搭載される「Katmai new instructions(カトマイ新命令群)」あるいは「MMX2」と呼ばれる新命令群だ。これは、Tannerと同時期に投入されるデスクトップPC向けMPU「Katmai(カトマイ)」が共通に備える命令だと言われている。現在、この命令に関して公式にわかっているのは、浮動小数点演算をMMX化つまり、「SIMD(Single Instruction, Multiple Data)」技法により、ひとつの命令で複数のパック化されたデータに対して同じ処理を同時に実行する並列処理を行なえるようにするということだけだ。

 これと似たようなアプローチには、米AMDなどx86互換MPUメーカーが採用した「3DNow!」命令がある。AMD-K6-2の場合は、この技術によって、2個の実行ユニットで単精度(32ビット)の浮動小数点演算命令を2個ずつ、合計4個の命令を同時に実行できるようになっている。

 だが、Katmai/Tannerが搭載する新命令は、今の「3DNow!」とは、かなり違ったアプローチになる可能性がある。例えば、AMDの3DNow!は、MMXで使っているMMXレジスタ(実際にはFPレジスタを定義し直したもの)を使用しているが、Katmaiは新命令用にレジスタそのものを新設する可能性がある。

 これに関しては、じつはWeb上に、Katmai命令セットと称するもののオペコードをアップしている個人サイトがあり、そこにレジスタの拡張についての情報も掲載されている。この手のサイトの情報は、もちろん信憑性の点では何とも言えないが、じつは、IntelがKatmaiでレジスタを拡張するというウワサ自体は以前からあり、これに関しては業界でも確実視する人が多い。

 そして、レジスタの拡張とともにウワサされているのは、Intelがこの新命令で、単精度の浮動小数点演算だけでなく、倍精度(64ビット)の浮動小数点演算をサポートするかも知れないと言う点だ。もしそうだとすると、IntelがKatmai/Tannerで狙っているのは、3DNow!とはかなり異なる市場/アプリケーションだということになる。

 同じ浮動小数点演算でも、科学技術系の用途や高度なグラフィックス処理になると、倍精度と呼ばれる、より精度の高い浮動小数点演算が必要になる。というか、本格的に浮動小数点演算を多用するアプリケーションでは、倍精度を使う方がむしろ一般的だ。つまり、3Dゲームなどで使われることが多い単精度だけをサポートしていては、こうした用途はカバーができないということになる。


●倍精度でハイエンド狙い?

 というわけで、Intelが、もしKatmai新命令で倍精度をサポートするなら、それはハイエンドワークステーション市場をTannerでカバーしようという意図があるということになる。3DNow!のように、コンシューマ向けの3Dゲームが中心に来る展開ではない。もちろん、3DゲームやMPEG2のデコードなどもKatmaiで視野に入れるだろうが、ワークステーション用アプリケーションやビジネスアプリケーションのビジュアル化などにもかなり力点が来ることになる。Intelがこれまでビジュアルコンピューティングという旗を掲げ、ハイエンドのビジュアル処理を視野に入れてきたことを考えれば、こうした展開があったとしても不思議はない。

 Intelが、Katmai新命令の導入に時間をかけていることも、Katmai/Tannerでのレジスタと倍精度浮動小数点演算のサポートというウワサに信憑性を与えている。「3DNow!のような拡張だけなら、もっと早くできたはず」というわけだ。しかし、3DNow!のようにMMXレジスタを使うと、倍精度の浮動小数点データを2つパック化して格納することはできない。レジスタの拡張も当然行なわなければならず、コンテキストスイッチングなどややこしい問題も出てくる。ソフトウェアのサポートも、より大変だ。

 というわけで、今回は業界の憶測ばかりを集めたコラムになってしまったが、おそらく今年の秋頃には、Katmai新命令についても、正体が公表されるのではないだろうか。いずれにせよ、IntelがIA-64という全く新しい命令セットの導入前にも、どんどん命令セットアーキテクチャのレベルでx86を進化させて行こうとしているのは確かだ。

バックナンバー

('98/7/10)

[Reported by 後藤 弘茂]


【PC Watchホームページ】


ウォッチ編集部内PC Watch担当pc-watch-info@impress.co.jp