このページの本文へ

ロードマップでわかる!当世プロセッサー事情 第24回

MSのプッシュでAMD64が勝者になったx86の64bit拡張

2009年10月26日 12時00分更新

文● 大原雄介(http://www.yusuke-ohara.com/)

  • この記事をはてなブックマークに追加
  • 本文印刷

独自の64bit拡張「Yamhill」を開発するインテル
マイクロソフトのAMD64支持で、一転サポートへ

Pentium 4

インテルはPentium 4に、AMDとは異なる64bit拡張「Yamhill」を導入しようとしていた

 さて、問題はインテルの出方である。この当時、インテルは「Prescott」コアの「Pentium 4」で64bit拡張を考えていた。これは「Yamhill」と呼ばれたものだが、少なくともAMDのAMD64とは異なったものだったようだ。

 というのも、当時まだインテルは、「64bitの本命はItaniumシリーズ」と位置づけており、x86の64bit版はItaniumのポジションを脅かすような強力なものにしたくなかったようだ。少なくともYamhillは、x86との互換性は非常に乏しかったらしい。この状況では、インテルがAMD64をサポートすべき積極的な理由は無かった。にもかかわらずインテルがこれを採用したのは、マイクロソフトの圧力によるものである。

Itanium 2

「Itanium 2」。AMD64が登場した頃、インテルは64bit CPUの本命にItaniumシリーズを位置付けていた

 マイクロソフトは当時、UNIX/Linuxでほぼ独占状態にあったハイエンドサーバーのポジションを、何とかして攻略したかった。実際WindowsがItaniumをサポートしたのもこれが理由であるが、結果としてItaniumでは非常に限られたマーケットしか得られず、不満を募らせていた。マイクロソフトとしては、Windowsでハイエンドマーケットを攻略できるだけのプロセッサーが必要であり、それにはAMD64が最適であった。

 もうひとつ理由を挙げると、当時マイクロソフトはx86以外にItaniumをサポートしていたし、それ以前にはAlpha/MIPS/PowerPCといったさまざまなプロセッサーをサポートしていた。ところが、これらはいずれもバイナリー互換性がなく、折角Windowsプラットフォームを用意しても、ほかのCPUアーキテクチャー用のプログラムが動かないという状況にあった。

 そのためマイクロソフトとしては、64bit環境もx86との互換性が必須であり、この点でもAMD64は有利であった。結果としてマイクロソフトはインテルに猛烈なプレッシャーをかける。マイクロソフトは2002年11月に、AMD64ベースの「Windows Server 2003」の動作デモを公開。さらに2003年4月には、Windows Server 2003でAMD64をサポートすることを正式に表明して、インテルにプレッシャーをかけた。結局2004年2月、インテルはPrescottコアのPentium 4にて、「EM64T」(現在のIntel 64)という名称でAMD64をサポートする。

 もっとも、これは多分に“やっつけ”というか、とりあえず命令をサポートしたというレベルで、最適化は十分ではなかった。その後に登場したCore 2 DuoなどCoreアーキテクチャーCPUでも、64bit時は高速化に有用なMicroOps Fusion機能が使えないといった、いろいろ制限があった。こうした制限が大幅に緩和され、事実上32bitと同等の性能が出るようになるのは「Nehalem」まで待たなければならなかった。

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン