●NetBurstの要だったHyper-Threadingが消える Intelは、次世代マイクロアーキテクチャCPUとしてデスクトップ「Conroe(コンロー)」、モバイル「Merom(メロン)」、DP(デュアルプロセッサ)サーバー&ワークステーション「Woodcrest(ウッドクレスト)」のファミリを2006年後半に投入しようとしている。これら新CPUは、現在のNetBurst(Pentium 4)系アーキテクチャとは異なるマイクロアーキテクチャとなる。そのため、仕様にも大きな違いが出ている。 特に目立つのは新CPUでは、Hyper-Threadingをサポートしないこと。また、動作周波数も現在のNetBurst系CPUより数グレード低くなる。その代わり、TDP(Thermal Design Power:熱設計消費電力)はNetBurst系より数段下がり、デスクトップならPentium 4初期の時代の水準にまで戻るという。 IntelのNetBurst系CPUのHyper-Threadingは、複数のスレッドの命令を同時に実行できる「SMT(Simultaneous Multithreading)」技術だ。しかし、これは、次世代アーキテクチャCPU群には引き継がれない。つまり、次世代マイクロアーキテクチャでのマルチスレッディング技術は、デュアルコアだけになる。 これがわかるのは、サーバー向けのWoodcrestでもHyper-Threadingがサポートされていないからだ。現在のNetBurst系CPUの場合、サーバー製品では、いずれのデュアルコアCPUでもHyper-Threadingがイネーブル(有効)にされる。つまり、Pentium XE同様に、デュアルコア+Hyper-Threadingで4スレッドのマルチスレッディングだ。その後継となるWoodcrestに、もしHyper-Threadingが実装されているのなら、イネーブルにされないのは不自然だ。そのため、現在のPentium Extreme Edition(Smithfield-XE)の、デュアルコア+Hyper-Threadingによる4wayのマルチスレッディングも継続されないと見られる。 マルチスレディング技術には、SMTの他に、Fine-Grained(細粒度)マルチスレッディングやCoarse-Grained(粗粒度)マルチスレッディングといった、より実装コストの少ない技術があるが、Intelはいずれの技術の採用もしないと見られる。Intelは、Montecitoに実装した「Switch-on Event Multi-Threading (SoEMT)」型の粒度の高いマルチスレッディングもHyper-Threadingと呼び始めているからだ。同種の技術をConroe系に載せるなら、それもHyper-Threadingと呼ぶはずだ。 Intelは次世代アーキテクチャでは、完全にマルチスレッディング技術を切り捨てる可能性が高い。これは、アーキテクチャの大きな方向性の変化を意味している。
●SMT型アーキテクチャの利点 マルチスレッディングの利点のひとつは、CPUの最大のボトルネックであるメモリアクセスのレイテンシを隠蔽し、CPUコアをビジーに保つことができる点。デュアルコアでは、ストールしたCPUコアはアイドル状態になってしまう。さらに、他のマルチスレッディング技術と異なり、複数スレッドの命令を混在実行できるSMTの場合は、同時実行できる命令数を増やして、実行リソースを有効に使うという利点もある。SMTは、Out-of-Order型のマイクロアーキテクチャのマシンなら、比較的小規模な拡張で実現できるため、効率の高いパフォーマンス向上だとIntelは説明していた。 また、NetBurst系のようにパイプラインが深いCPUの場合は、分岐予測ミスなどによりパイプラインがフラッシュされた場合、パイプラインが最充填されるまで時間がかかってしまう。そのため、マルチスレッディングの効果が大きくなる。そのため、SMTは、Out-of-Order実行でパイプラインが深いほど有効となる。 こうした利点があるため、CPUの将来像としては、CPUコア数を倍増させるマルチコアとは別に、SMTを発展させる道もあった。4wayや8wayへとSMTを強化し、それに応じてCPU内部の実行ユニット数を増やすことで、CPUのIPC(1サイクルで実行できる命令数:instruction per cycle)を向上させていく方向性だ。これは、他のマルチスレッディング技術にはない大きな特長だ。 同時に、パイプラインも細分化し続ければ、高クロック化も図ることができる。NetBurstの実装では実行リソース自体が限られていたが、もしNetBurstをこのまま進化させていったら、こうした道筋を取っただろう。 ●なぜSMTからマルチコアへと切り替えたのか しかし、Intelはアーキテクチャの方向を大きく転換。新アーキテクチャでは、SMTからマルチコアへとフォーカスを切り替えた。 その理由として推測できることはいくつかある。まず、新アーキテクチャが、SMTを使わなくても効率をアップできるだけのILPを達成できている可能性。Intelが以前IDFで示したプレゼンテーションでは、「Merom-like」アーキテクチャが4マイクロオペレーション(uOPs)/サイクルとなっていた。現在のNetBurstの1サイクル3 uOPsよりも多い。 それから、新アーキテクチャではパイプラインがNetBurstほど深くなく、SMTを使わなくてもCPUの効率があまり落ちない可能性。新アーキテクチャの動作周波数がNetBurstより低いことを考えると、パイプラインは浅い可能性が高い。 IntelがCPUコアをよりシンプルにする方向へ向けるというフィロソフィを取った可能性もある。ただし、SMTはout-of-order実行アーキテクチャでは実装コストが低い点は、この推測に合致しない。また、今後数年のソフトウェア環境では、実行できるスレッドリソースは2wayまでで、それ以上にTLPを高めても効果が薄いと判断した可能性もある。しかし、新アーキテクチャは今後最低でも4~5年は継続される点に矛盾がある。 SMTはサポートしないものの、新アーキテクチャには大きな魅力がある。それは、低TDPだ。現在明らかになっている次世代アーキテクチャCPUのTDPは、組み込み(Embedded)版のWoodcrestだけだが、それでも水準はわかる。Embedded Woodcrestは4MB L2キャッシュで2.93GHz時にTDP 80W。つまり、周波数はぎりぎり3GHz程度だが、その代わり同程度のクロックのシングルコアXeonよりTDPは下がる。 デスクトップCPUのConroeのTDPは、まだ不明だ。しかし、以前、ある業界関係者から聞いた時はメインストリームPCで65W程度、パフォーマンスPCで90W程度だった。現在は、この数字は異なっているかもしれないが、NetBurst系より大幅に下がることだけは間違いはない。もし、上限が90Wのサーマル枠だったとしても、Embedded WoodcrestのTDPと周波数を見る限り、Conroeの周波数は現在のNetBurstほどは高くはならないだろう。 ●立場が入れ替わったように見えるCPUアーキテクチャ 次世代アーキテクチャにIntelがSMTを実装しなかったことは、同社が現状のソフトウェア環境でのSMTの有効性に対して、疑問を持っていることを示すのかもしれない。いち早くSMTを実装したIntelが、SMTから(一時的かもしれないが)手を引くことの、アーキテクチャ的なインパクトは大きい。 興味深いのは、ほかのCPUメーカーは、逆にSMTに肯定的であることだ。例えば、8月13日から米パロアルトで行なわれているチップ関連カンファレンス「HOT CHIPS」のチュートリアルプレゼンテーションでは、IBMはSMTは、消費電力に対するパフォーマンスの面で有効だと評価している。IBMは、Power 5でSMTを実装している。 IBMのPower/PowerPC系CPUは、CellプロセッサやXbox 360 CPUに代表されるように、高周波数化へと向かっている。IBMは、サーバー向けの次世代CPU「Power6」も高周波数アーキテクチャになると、公式に示している。Intelが、SMTからマルチコアへ、周波数重視から並列性重視へと移行するのと入れ替わりに、IBMが高周波数にフォーカスし、SMTを評価しているようなイメージだ。 立場が入れ替わったように見える、今回のアーキテクチャ方向性の違いの全貌はまだ見えていない。しかし、これまでのアーキテクチャ対立構図に、大きな変化が起こりつつあることだけは間違いがなさそうだ。
□関連記事 (2005年8月16日) [Reported by 後藤 弘茂(Hiroshige Goto)]
【PC Watchホームページ】
|
|