【 ここから本文 】
マルチコア・コンピューティング
ソーシャルブックマークに登録 :
印刷用ページの表示

インテルの誤算、AMDの躍進──64ビット移行の動乱を経て、マルチコア競争へ
(2007年01月16日)
1990年代半ばから約10年、インテルはPC向けCPU市場を圧倒的なシェアで席巻した。この間、強大なウィンテル帝国の前に、インテル以外のCPUメーカーは事実上、市場に対してごく限定的な影響力しか持ちえない、いわばニッチ・プレーヤーの地位に甘んじていた。AMDもその1社であったが、その後同社は急成長し、今やインテルといえどもAMDの動向を無視することは難しくなってきている。この勢力地図の変化はどうして起こったのか。
渡邉利和
| 米国インテル社長兼CEOのポール・オッテリーニ氏は、IDFのステージで、テラフロップ・レベルの処理速度を実現するという試作ウェハを披露した |
CPU市場の勢力地図の変化。それは端的に言えば、「64ビットへの移行戦略」の違いが生んだ変化である。1990年代初頭から半ばまでの「RISC対CISC」という対立は、UNIXサーバ向けの64ビットCPUと、PC向けの32ビットCPUという住み分けができることで決着した。大量生産・大量販売を前提とするインテルには、当時のハイエンドUNIXサーバ市場はさほど魅力的には映らなかったろうし、圧倒的なボリューム・ゾーンであるPC市場と成長し始めたPCサーバ市場において64ビットCPUに対するニーズもほとんどなかったのは事実だ。
とはいえ、CPUの進化の歴史を考えれば、いずれは64ビットへの移行が起こるのは不可避であり、いつまでも「64ビットの領分はRISC」と言っていられない。程なくインテルは、ユーザーに32ビットから64ビットへの移行パスを用意する必要に迫られた。
それまでインテルは、バイナリ互換性を最大の武器に市場の圧倒的な支持を得ていた。だが一方、古いアーキテクチャを設計時点では想定されなかった規模にまで拡張し続けるよりも、過去のしがらみを断って最新の設計を導入したほうが、よりよい製品を作れることも明らかだ。
インテルにとっても、互換性を維持し続けることに限界が見えていたのだろう。同社は64ビットへの移行に際して互換性をあきらめるという決断を下し、最新の設計技法に基づいて新たな命令セットの設計に取り組んだ。これが、ヒューレット・パッカードとの共同開発で実現したEPICアーキテクチャであり、後にIA64と呼ばれることになる。
IA64の市場での苦戦
IA64は、当初はIA32を置き換えることさえ想定されていたはずだ。やがてはPCも64ビット化される時期が来るだろうし、その際はIA32が完全に終焉を迎え、IA64で一本化されるという予想もあったと思われる。こうした大規模なアーキテクチャの転換は、ベンダー側の都合で一方的に押しつけても、ユーザーの支持は得られにくいのが常である。受け入れられるためには納得のいく理由づけが必要だが、64ビットへの移行は、インテルにとって滅多にない大きなチャンスでもあった。当然、かつての32ビットへの移行も同様のチャンスだったと言えるが、技術の成熟度からすると、当時は大規模なアーキテクチャ変更を行うタイミングではなかった。つまり、このときは互換性維持を選んだインテルの戦略が的中したことになる。
その意味では64ビットへの移行は、20年ぶりに訪れた大転換でもあった。その次の移行があるとすれば128ビットだが、これが市場から求められるものであるかどうかの判断は困難である。そのため、64ビットへの移行はもしかしたらプロセッサ・アーキテクチャの大転換として最後のタイミングになるかもしれない──そう判断したからこそ、インテルは互換性を捨て、新しい命令セットを採用する決断を下したはずである。
しかし、CISCの次代を担うCPUとして2001年に登場したItaniumは、当初のインテルの想定に入っていたと思われるハイエンドPCサーバにはほとんど採用されず、RISC CPUのUNIXサーバと直接の競合になるようなハイエンド・サーバに搭載されるのにとどまっている。現状、IA64はインテルが描いたようなボリューム・ゾーンには成長しておらず、同社の市場に対する影響力も大きなものにはなっていない。
しかしながら、当初の計画どおりインテルが強い意志を持ってIA32からIA64へのシフトを推進すれば、いずれはIA64が主流となっていくだろうと思われた。ユーザー側では64ビット・システムへの要求が徐々に高まってきており、メモリ・アドレッシングの問題を考えても、ハイエンド分野から64ビット化への移行を急がざるをえないことは明白だったからだ。だが、インテルはこの方針を貫徹できなかった。その理由は、ライバルであるAMDが「別の解」を提示したからである。
主従逆転となったAMD64の成功
2003年、AMDは64ビット命令セットとして独自にIA32を64ビット拡張した形のAMD64アーキテクチャを開発し、これを採用したOpteronプロセッサを投入した。ユーザーには、インテルに従って互換性のないIA64に移行するか、あるいは32ビット環境との互換性を維持しながらシームレスに64ビットに移行するためにAMD64を選ぶかという2つの選択肢が提示されたことになる。
| Oracle OpenWorldに登場した米国AMDの会長兼CEO、ヘクター・ルイズ氏は、「CPU業界では今後、パワー・バランスがシフトし、主導権がベンダーからユーザーに移る」と論じた |
AMD64でとられた64ビット拡張は、技術的に新規性のあるものではない。同様の手法による64ビットCPUの実現は、インテルでも研究はされていたが、市場投入のタイミングでライバルが先行した結果、同社はこの市場の主導権を握ることができなくなった。複数の64ビット・アーキテクチャのサポートを余儀なくされることを嫌ったソフトウェア・ベンダー、特にマイクロソフトの影響力が大きかったと言われるが、ともあれIA32の64ビット拡張に関しては、AMD64が事実上の標準として確立されたのである。インテル社内では、同様の手法でIA32を64ビット拡張しつつもAMD64とは微妙に異なる64ビット命令セットが準備されていたと言われている。だが、これの市場投入は結局見送られ、インテルがAMD64に従う形となり、EM64Tというアーキテクチャ名でXeonなどに採用されていった。もともとインテルが確立した命令セットの拡張なのに、みずからが主導権を握れないというのは同社にとって実に不本意な、想定外の事態であったことは言うまでもない。
EM64Tの名称に込められたインテルの真意
これで、インテルはIA64とEM64Tの2種類の64ビットCPUラインを並べることになった。このEM64Tは、Extended Memory 64 Technologyの略である。64ビット環境の最大のメリットと言われるのが、メモリ・アドレッシングを64ビットで行うことでメモリ空間を大幅に拡張できることだ。32ビット・アドレッシングでは4GBに限定されるアドレス空間を、一気にTB単位にまで拡張できるのだ。つまり、EM64Tとは「正統な64ビット命令セットではないが、メモリ・アドレス拡張という64ビット化のメリットは享受できる」という宣言でもあり、64ビット命令セットの本流はあくまでIA64であるというニュアンスが込められていたと推測できよう。
インテルとしては、市場で「インテルかAMDか」という勝負になった場合には、過去の実績から考えても負けることはないと踏んでいたと思われる。しかし、現実は周知のとおりで、AMDが順調にシェアを拡大する一方、インテルは苦境に追い込まれている。少なくとも現時点では、ボリューム・ゾーンのユーザーは、64ビットへの移行に際して互換性を捨てる気はないという結論に達したと判断してよさそうだ。Itanium 2がじりじりとRISC/UNIXサーバ市場に食い込んでいるというデータもあるが、それ以上のペースでAMD64マシンが売れているのである。
さて、ここにきてインテルは、EM64Tを名称変更し、新たに「インテル64アーキテクチャ(Intel 64 Architecture)」と呼ぶことにした(略称は発表されていないようだが、強引に当てはめるとすれば“I64A”だろうか)。ついにインテルも「IA32の64ビット拡張は応急措置にすぎない」と主張するのは止めたということだ。もちろん、現時点でインテルはIA64に投資を続ける意向を明らかにしているが、どちらを選んでもよいということになった場合、大多数のユーザーはAMD64/Intel 64を選ぶことになろう。もちろん、IA64にはIntel 64にはないメリットがあるが、通常、IA64と比べられるのはIntel 64ではなく、RISCである。
順調に進むOpteronのマルチコア化
AMDは2006年8月、Opteronのマルチコア化のロードマップを発表した。Opteronでは2005年4月にデュアルコア版が投入されているが、2007年投入予定のクアッドコア版では、デュアルコア版と同じ熱設計電力を維持されるという。一方、インテルは9月に開催されたIDFで、Xeonのクアッドコア版を2006年内に投入することを公表した。そこで同社がとったアプローチは、デュアルコアのダイを2つ、1つのパッケージ内に封入することでクアッドコア版を実現するというものだ。この手法では、ダイの製造プロセスでデュアルコアとクアッドコアを作り分ける必要がないため、製造面ではメリットがある。逆に欠点は、同じものを2個押し込むわけだから、当然消費電力も発熱量もきっちり2倍になると予想される点だ。
Opteronでは現行のデュアルコア版と同じ消費電力/発熱でクアッドコアを実現するとしているので、クアッドコア版のコア当たり消費電力はデュアルコア版の2分の1に抑えられる見込みだ。デュアルコアからクアッドコアになるまで2年かかったことになるが、ちょうどムーアの法則どおりだ。ここから見ると、少なくとも現時点での64ビットCPUのマルチコア化に関しては、AMDはインテルに2年先行していると言える。
マルチコアCPUは、サンがNiagara(製品名:UltraSPARC T1)の開発計画を公表して以来、急速にトレンドの主役に躍り出た感がある。それまでのインテルはひたすらクロック周波数向上に邁進していたが、現在では完全に方向転換を終え、新しいCore 2マイクロアーキテクチャに基づくデュアルコアCPUの大量出荷を開始している。
さすがにプロセッサの開発と製造に関して世界最高のリソースを有するインテルだけあり、開発思想の大転換から製品化までの時間は、競合他社に比べるとかなり短期間だった。今後同社がその持てるリソースをフルにマルチコア化に振り向ければ、AMDをはじめ競合他社がこの分野で確保しているリードもあっという間に縮まる可能性が高い。少なくとも今後数年間は、Intel 64/AMD64を軸にマルチコアCPUに関する激しい主導権争いが続くと見られる。一方のIA64に関しては、ユーザーの支持が拡大するかどうかがポイントだ。同じく今後数年という期間で、IA64に関してもその将来が決定づけられることになる可能性が高い。













