NetBurst アーキテクチャ

はじめに

Intel の Pentium 4 および Pentium D シリーズに採用されているアーキテクチャを同社は NetBurst と命名しています。このアーキテクチャは最近の Core Microarchitecture(以下、Core MA) の導入に伴って、同社からも見放された技術として認識されています。この NetBurst アーキテクチャは言われているようにダメなものなのでしょうか。その点について今回は書いてみたいと思います。

なお、ここで何度か書いているように私はハードウェアの専門家ではなく、書いていることには誤りが多分に含まれる可能性があることをご了承ください。

Pentium III から Pentium 4 へ

Pentium III は Pentium Pro からはじまり、Pentium II へと改良され、さらに第1世代の Pentium III となるコードネーム Katmai で命令が追加され、それまでオフチップで搭載していたセカンドキャッシュをオンチップに統合して高速化した Coppermine を第2世代目の製品として投入しました。この後、第3世代の製品としてコードネーム Tualatin が投入されましたが、この段階で Intel は主流の製品を Pentium 4 の第1世代製品コードネーム Willamette に切り替えました。Pentium III までは、クロックとクロックあたりの性能のバランスに力点を置いていた P6 アーキテクチャを、Pentium 4 では明らかなクロック志向に切り替えた野心的かつ意欲的な NetBurst アーキテクチャへ切り替えました。

この NetBurst アーキテクチャはクロック志向で、P6 アーキテクチャと比較してクロックあたりの性能は下がるものの、クロックを上げることができるアーキテクチャです。市場がクロック至上主義で推移していることと、その後の製造プロセスの改良と微細化によってクロックあたりに消費する電力の低減とクロックの高速化が望めることを前提にしています。つまり、P6 アーキテクチャのクロックあたりの性能を 1 として、NetBurst アーキテクチャのクロックあたりの性能が 0.7 となったとしても、30% 以上のクロック向上を達成すれば P6 アーキテクチャよりも高速化を実現できるということです。

AMD の Athlon

当時の AMD がメインストリーム向けに出荷していたプロセッサは Athlon XP といい、Athlon 以前は Intel とバスアーキテクチャまで含めての互換性を取っていた方針を(Intel との裁判での和解条項に沿って)破棄し、Compaq に買収された DEC が自社の Alpha シリーズ向けのバスとして設計した EV6 を採用し、プロセッサ内部の設計はクロック向上とクロックあたりの性能のバランスが非常によくとれた Athlon をリリースしました(その後 Compaq は HP に買収されました)。

当初の Athlon は、初期の Pentium III と同様にオフチップでキャッシュを搭載していましたが、最終的にはオンチップでキャッシュを搭載しました。このあたりの展開は Intel と AMD 共に似たような流れを歩んでいます。この Athlon のアーキテクチャを K7 アーキテクチャと呼びます。

Pentium III と Athlon XP

後発である K7 アーキテクチャを採用した Athlon は、先発の P6 アーキテクチャである Pentium III を徐々に追い詰めていきました。最終的にパソコン向け一般プロセッサとして、初めて 1GHz を超えるという競争に打ち勝ち、AMD が Intel に十分対抗できる実力を有したことをアピールするにいたりました。

Pentium 4 と Athlon XP

Intel は、このクロック競争に打ち勝つために Pentium 4 をリリースしました。その後はグングンとクロックを上げていき、AMD は Athlon シリーズに直接クロックを表示しての販売に限界を感じ、「プロセッサナンバー」を導入するに至りました。

Pentium 4 と Athlon 64

AMD は K7 アーキテクチャを改良した K8 アーキテクチャを導入しました。K7 アーキテクチャよりもクロックを上げやすい設計に変更し、命令フォーマットに独自の AMD-64 を実装、さらにメモリコントローラと同社の規定する Hyper-Transport を CPU に統合しました。

当初は Pentium 4 と Athlon 64 はいい戦いを繰り広げたものの、先発の NetBurst アーキテクチャは後発の K8 アーキテクチャにじりじりと実性能で追い詰められていきました(クロック周波数では勝っていました)。そして最終的には事実上の敗北を迎えることになります。

NetBurst アーキテクチャが K8 アーキテクチャに敗れた理由

これは Intel がシミュレーションから予測していた物理特性が、誤差の範囲を大きく超えて悪い方向に傾いて行ったことに起因するようです。Impress Watch の Web マガジン PC Watch に 後藤弘茂 氏が連載している 後藤弘茂のWeekly海外ニュース の複数の記事を時系列で追っていく限り、これは間違いないでしょう。どんどんメーカーに通知される TDP が向上していく様子がレポートされています。

CMOS プロセスで製造された半導体は、各トランジスタの電位が変化するごとに多量の電流が流れます。それとは別にリーク電流と呼ばれる、常にあふれて漏れ続ける電流があります。電流が流れれば、それは消費電力となり、熱にも反映されます。熱が生まれればそれだけスイッチ特性にも影響が現れますし、そもそも消費される電力の供給や冷却にも問題が発生してきます。周波数と電圧によって消費する電流は概ね2乗の関係があるといわれており、このことから半導体のスイッチ特性と許容する消費電力および熱量の条件から、製品としてリリース可能な周波数が決まってきます。

このようにして、求められた周波数、つまり直結する性能と消費電力・熱量のバランスがシミュレーションから予想していた物理特性との乖離により、想定から大きく外れてしまった NetBurst アーキテクチャは追い詰められていったのです。

敗れたのは NetBurst アーキテクチャか、プロセス特性か?

こうして経緯を見てみると、NetBurst アーキテクチャそのものに敗北の主因があったとは言えないのではないかという気がしてくるのですがいかがでしょうか。もしも当初 Intel が予測したプロセス特性を得ることができていれば、NetBurst アーキテクチャは P6 アーキテクチャまでの世代のように、敗北の汚名を受けることなく Core MA に世代交代することができたかもしれません。あるいは、まだまだ現役であった可能性すらあるのではないでしょうか。

まとめ

最近になって、Intel はプロセス特性の改良に成功したようで、NetBurst アーキテクチャ採用の CPU 製品の TDP を 65W に引き下げました(参考記事:PC Watch – Intel、Pentium 4 6×1のTDPを65Wに引き下げ)。これが1年前に行えていれば、NetBurst アーキテクチャの評価はまた違ったものになっていたかもしれません。

アーキテクチャはよく語られますが、それを実現させるプロセス技術も大事な要素です。プロセスルールによるサイズや SOI などオプションが分かりやすいため、よく XX ナノメートルの SOI …というような言い方をしますが、実際にはそれだけでは計りきれないものがあります。事実、SOI を導入するわけでもなく、Intel は NetBurst アーキテクチャ採用製品の TDP を下げることに成功しています。同一の会社でこれなのですから、製造する会社が異なればさらに特性の差は大きくなることでしょう。

これをパソコンにたとえるなら、プロセス技術がハードウェアで、アーキテクチャがソフトウェアのような関係なのかもしれません。

歴史に「もし」はないとは言いますが、このように「もし」を考えてみるのは、別の側面を見ているようで楽しいものです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です