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

Intelは昨年秋にAMD64互換を決めた




●2つあったIntelの64bit拡張技術

 Intelのオリジナルプランでは、IA-32の64bit拡張テクノロジはAMDの同様の技術「AMD64」と互換性を持たなかった。だが、IntelとMicrosoftの交渉の結果、64bit拡張はAMD64完全互換へと変更になった。64bit拡張テクノロジのコードネームが「Yamhill(ヤムヒル)」から「Clackamas(クラカマス)」へと変わったのも同じタイミングだと思われる。いったいいつ、どんな理由で、YamhillはClackamasに変わったのか。

 64bit拡張は、CPUのマイクロアーキテクチャの根幹に関わる。例えば、整数演算パイプを64bit幅に拡充しなければならない。そのため、通称IA-32eと呼ばれるこの技術を「Prescott(プレスコット)」に実装するためには、Prescottのアーキテクチャ開発の段階で、決定しなければならなかったと推測される。

 幸いなことにPrescottのアーキテクチャ定義の時期はほぼ特定できている。IntelのWebサイトで一時公開されていた社内の開発者へのインタビュー「Oral History Interview With Doug Carmean」で、Prescott開発に関わったCarmean氏が2001年にNehalemのアーキテクチャ定義を行なう前まで、Prescottに携わったことを明らかにしていたからだ。そのため、Prescottのアーキテクチャが定義されたのは、2000年のおそらく後半だったことがわかる。

 一方、AMDはその前年の'99年10月にAMD64(当時はx86-64と呼ばれていた)の計画を発表。翌2000年8月にスペックの概要を公開している。つまり、IntelはPrescottの上流設計の時点で、AMDが何をやろうとしているのかを知っていたわけだ。しかし、IntelがPrescottへの64bit拡張の実装を2000年から進めていたとしても、その内容は表に出ることはなかった。

●Yamhill記事でIntelの計画が明らかに

 Intelの64bit拡張計画が、世間に明らかになったのは2002年1月。Intelの地元サンノゼの新聞「San Jose Mercury News」の記事「Intel's Plan B chip stirs internal debate」(2002/01/24)がレポートしたためだった。記事では、Intel版の64bit拡張が「Yamhill Technology」と呼ばれ、Pentium 4後継の次世代CPUコア「Prescott」に実装されると報じた。また、YamhillがAMDの64bit拡張「x86-64(AMD64)」と同じように従来のIA-32アーキテクチャを64bitに拡張したものらしいと推測していた。

 また、記事では、すぐにこのフィーチャが有効にされるというわけではないともしていた。Yamhillはバックアッププランだと伝えており、IA-32の64bit化はItaniumのIA-64アーキテクチャのアドバンテージを失わせるため、実装はしても本当に導入するかどうかわからないと書いていた。

 現在になってみると、この記事は限りなく正確だったことがわかる。そのため、元々はバックアッププランだったというのも、事実だったと思われる。どころか、この記事自体がIntelからのリークだった可能性すらある。というのは、この記事が露出したタイミングは、AMDがAMD64を実装したK8のファーストシリコンを完成させ、デモを行なおうとしていた時期だからだ。つまり、AMD64が現実のものになろうとした、まさにその瞬間にYamhillが知られたわけだ。

 その効果はてきめんだったようだ。というのは、その直後に、MicrosoftとIntelがYamhillに関して接触した形跡があるからだ。例えば、この時期に、AMDの元CEO Jerry Sanders(ジェリー・サンダース)氏が、MicrosoftのBill Gates(ビル・ゲイツ)会長兼CSAと、電話で会談。Microsoftに対して、YamhillではなくAMD64のサポートを強く呼びかけていたようだ。そのことから、この時点ではYamhillとAMD64に互換性がなかったことも明らかだ。

 結局、Microsoftは2002年春にはAMD64のサポートを表明、移植作業を始める。この時期、IntelとMicrosoftの間でどのような交渉が行なわれていたのかは、まだわかっていない。ある業界筋のソースは、両社は腫れ物に触るような感じで、64bit問題についてはほとんど交渉していなかったと伝える。

●Microsoftのゴリ押しで事態が動き始める

 話が急転し始めたのは2003年春に入ってからだ。まず、2003年3月のCeBITで、MicrosoftがAMD64版Windows XPを、実際にOpteron上でデモ、注目を集めた。さらに2カ月後のWinHECでは、Microsoftのビル・ゲイツ会長兼CSAがキーノートスピーチの中でAMD64版Windowsを紹介。32bitソフト上でプラグインだけ64bit対応することで、処理を高速化できることなどのデモを行なった。こうしたMicrosoftのAMD64サポートの姿勢を、Intel側は「同社に対する宣戦布告」と受け取ったとある情報ソースは伝える。

 また、Intelが64bitソリューションを用意していることも、さまざまな証拠から明確になり始めた。例えば、Prescottのダイ(半導体本体)写真を解析、Prescottの整数演算ユニットが2パイプになっていることを指摘したプロセッサアーキテクトのWebサイトもあった。デュアルの32bit整数演算パイプを組み合わせて使うことで、64bit演算を行なう仕組みになっているという解析だ。

 もっとも、この時期のIntelの64bitソリューションは今のIA-32eとは異なっていた。少なくともIntelは2003年5月頃までは、独自路線の64bit拡張でいく計画を堅持していた。この時期、あるIntel関係者は「メモリアドレッシング拡張は考えているが、AMDの方法とは違う」と語っていた。Intel幹部も、さまざまなメディアに対して、64bitやAMD64を実装する可能性を否定するコメントを言っていた。この時点では、Intelの64bit拡張は、AMD64互換ではなかったのだ。

 だが、その背後で、IntelはMicrosoftと接触、交渉を活発に行ない始めたという。そして、その過程で、MicrosoftはIntelに対して、AMD64とアーキテクチャを合わせることを要求していたと見られる。

●状況が変わった昨年9月から10月の間

 IntelとMicrosoftの交渉が進むなか、AMDは遅ればせながらもAthlon 64/64FXのリリース準備を進めていた。9月、AMDはAthlon 64/64FXを発表。そして、この時、COMPUTEXでの発表会で、Microsoftは2004年第1四半期中にはAMD64に対応するWindows XP 64bit Editionのファイナル版をリリースすると説明した。AMD64サポートを繰り上げて来たわけだ。しかし、発表会後、あるCPU関係者は「MicrosoftがAMD64サポートに前倒しにして積極的に動いているのは、Intelとの交渉を有利に進めるためのカード」と語っていた。

 次の動きは2003年10月にMicrosoftが開いたProfessional Developers Conference (PDC)だった。このカンファレンスでMicrosoftは、AMD64版の「Windows XP 64bit Edition」は夏にリリースと公式に発表した。つまり、AMD64サポートは、一気に2四半期後ろへずれ込んでしまったわけだ。その間に、大きな動きがあったことは確かだ。

 ここに重要な証言がある。ある業界関係者によると、Intelが64bit拡張をAMD64互換にすると決定したのは、2003年秋のタイミングだったという。この情報の確度は比較的高く、そのためIntelはかなりぎりぎりのタイミングでAMD64互換に切り替えたことがわかる。そして、前後の事情を重ね合わせると、それはこの9月から10月の間であった可能性が高い。つまり、Athlon 64が登場、Microsoftがさらにカードを切ったことで、追い込まれたIntelが、AMD64互換にするという要求をのんだと推測できる。

●昨秋以来、急に活発化したIntelの64bit化戦略

 いったん決定したあとのIntelの動きは活発だった。Intelは、IA-32eの概要の発表を2004年の早期に行なうことをこの時期に決定したらしい。10月頃に会ったある業界関係者は、Intelが2004年の早い段階でIA-32eをアナウンスすることを示唆した。また、IA-32eの発表は、IA-64との互換性を確保する手段を提供できるようにしてから行なわれると語るソースもあった。

 業界の裏側では、IntelがIA-32eのプロモートを始めていた。2003年末までには一部顧客やデバイスベンダーに対する説明が始まった。その時点では、仕様は完全に現在のIA-32eと同じものになっていた。Clackamasというコードネームが使われるようになったのも、わかっている限りはこの頃からだ。

 また、1月にはItanium上でIA-32をソフトウェアエミュレーションする「IA-32 EL」が発表された。ある業界関係者はIDFで「IA-32 ELの目的は、最終的にソフトウェア実装でIA-32eをIA-64上でサポートすることにある」と証言した。これが、IA-64とIA-32eの橋渡しとなるわけだ。

 そして、今年1月末には同社のPaul S. Otellini(ポール・S・オッテリーニ)氏(President, Chief Operating Officer)が、Webcastでアナリストの質問に答え、32bitアーキテクチャと互換性のある64bitアーキテクチャを導入する方向を示した。そこで決定的になったわけだ。

 こうして振り返って見ると、IA-32e発表までのIntelの動きはかなり紆余曲折があったことがわかる。そして、その中で、独自仕様だった64bit拡張技術Yamhillは、AMD64互換のClackamasに変わっていったと考えられる。

できごと
199910AMDがx86-64を発表
20008AMDがx86-64のスペックを公表
2000後半Prescottのマイクロアーキテクチャ開発が行なわれる
20021IntelのYamhillがリークされる
20022AMDがK8をデモ
20022AMDのサンダース氏がAMD64サポートでMicrosoftのゲイツ氏と電話会談
20024MicrosoftがAMD64サポートを表明
20033CeBITでMicrosoftがAMD64版Windowsをデモ
20034AMDがOpteronを発表
20035MicrosoftがWinHECのキーノートスピーチでAMD64版Windowsを大々的にデモ
20039AMDがAthlon 64/64FXを発表
20039ComputexでのAMD発表会でMicrosoftがAMD64版Windows XPのファイナル版を2004年第1四半期中にリリースと発表
200310PDCでMicrosoftが、AMD64版Windows XPを2004年夏にリリースと発表
200312Intelが一部顧客にIA-32eの仕様説明を始める
20041Intelが公式に64bit拡張の可能性を認める
20042IDFでIntelがIA-32eを発表

□関連記事
IDF Spring 2004レポートリンク集
http://pc.watch.impress.co.jp/docs/2004/link/idfs.htm

バックナンバー

(2004年2月25日)

[Reported by 後藤 弘茂(Hiroshige Goto)]


【PC Watchホームページ】


PC Watch編集部 pc-watch-info@impress.co.jp 個別にご回答することはいたしかねます。

Copyright (c) 2004 Impress Corporation All rights reserved.