Core2Duoとは?
(2006/07/28→…→2008/01/10[文章整理])
ホーム > Core2Duoとは?

関連→CoreDuoとは?
【PentiumDの弱点を克服したCore 2 Duo】
やっと正式発表になったCore2Duo→インテル、デスクトップ・ノート向け Core 2 Duo/Extreme を発表(Japan.internet.com)
非常に注目されていたCPUですが、期待通り、パフォーマンス的にも発熱/消費電力的にも非常に優秀です。
対して、前世代となってしまったPentiumDは異常なほど発熱が大きく、ライバルのAMDのCPUに対しあまり評判が良くなかったのですが、うってかわってCore2DuoはPentiumDの弱点をことごとく克服しています。
なぜこれほど劇的に変わったのかというと、PentiumDとはまったくCPUの設計が違うからです。


【PentiumDとは何だったのか?】
Core2Duoを理解するには、まず「なぜPentiumDではダメなのか」を考えるのが手っ取り早いです。
Pentium4およびPentiumDは、NetBurst(ネットバースト)というアーキテクチャーを採用していました。
このアーキテクチャーを簡単に表現すると、将来的にCPUクロックが上がった時にも無理がこない(ハズの)CPU構造をしていました。
具体的に言うと、パイプラインを細分化する(段数を増やす)ことによって、パイプライン単位の仕事を単純化します。そうすればクロックが上がってもパイプライン毎の処理が単純なので短い時間でも動作が完了するわけで、つまりクロックが上げやすいというわけです。
この辺の内部的な話をし出すといくら紙幅があっても足りないので詳しいことは割愛させて頂きますが、パイプラインの段数を増やすのは、CPUの各ユニットの使用効率を向上させるという効果もあります(というか、それがパイプラインの本来の目的)。
ですので、当時は新しいCPUがでるたびに、パイプライン段数が増えていくのが当たり前のような風潮がありました。NetBurstは、そのハヤリを極度に推し進めた感じのアーキテクチャーでした。
ただし、それはいいことばかりではありません。
あまりパイプライン段数を増やしすぎると、分岐予測が外れたり投機実行が失敗した時にパイプラインが崩れるので、その時のペナルティ(パイプラインに流れている命令をキャンセルしたり命令を詰め直したりする手間)が増えてしまい、逆にパフォーマンスが頭打ちになってきます。
ですがIntelの思惑としては、ペナルティが増えてもクロックの高さでカバーできるというスタンスでした。当時のIntelの話だと4GHzぐらいは確実。恐らく5GHzぐらいまではいける、と言っていたような記憶があります。
今となっては、その考え方が正しくなかったことが、図らずも歴史が証明するかたちになってしまったわけです。
その中でも一番の計算違いは発熱でしょう。


【発熱の問題をクリアできなかったPentiumD】
クロック数をあげれば、当然発熱が大きくなるわけで、この発熱の問題がネックになって、Pentium4/PentiumDが当初目論んでいた高クロック化が実現できませんでした。
もちろん、その問題はIntelも当初から認識していたことで、策がなかったわけではありません。プロセスを微細化しCPUの駆動電圧を低くすることによってこの問題は回避できるはずでした。実際、プロセスを微細化したまではよかったのですが、微細化したことによるリーク電流の増大を抑え込むのに苦労し、思ったほど消費電力を下げることができませんでした。(2007/04/24 余談ですが、このリーク電流を減らす画期的技術として、「High-k Metal Gate」という技術がやっと実用化されつつあるようです。→2007/12/01 High-k Metal Gate技術により、45nmプロセスを実現したプロセッサとして、Core2Quad Q9650等のCPUが登場しました)
こうなってしまうとIntelも手詰まり。いろいろ努力したようですが、こころざし半ばで、新しいアーキテクチャーに移行する決断をせざるを得なかったということです。


【PentiumDとCore 2 Duoの違い】
そこで新たに登場したのが、Core2Duoです。こちらは、Core Microarchitecture(コア マイクロアーキテクチャー)という新アーキテクチャーになっています。NetBurstとはまったく発想の違うアーキテクチャーとなりました。

確かに、CPUのクロック数というのは、パフォーマンスの一つの指針ではありますが、PentiumD失敗の最大の原因は熱。熱の問題を抜きにしてはクロックは語れないのが現実になってきてしまいました。
デスクトップは大きなヒートシンクやCPUファンなどを取り付けるだけのスペースがあるために、ノートPCほどシビアにならなくてもなんとかなっていたわけですが、もうそれも限界まで来てしまったということです。
このような状況において、Core2Duoは「クロックあたりのパフォーマンス」を重視しています。もっと分かりやすく言えば「効率の良さ」を重視して作られています。限られたクロック数(≒発熱量)の中で、今までよりもより多くの命令を処理できるようにするにはどうすればいいかと言うことを最優先に考えたツクリになっています。
その点、まずCore2Duoは「不必要な電力を使わない」ための仕組みを積極的に搭載しています。革新的なのはL2キャッシュの扱い。
Dynamic Smart Cache Sizing機能 負荷が低い時にはL2キャッシュのサイズを小さくし、L2キャッシュに使う電力を節約。
Enhanced Deeper Sleep機能 アイドル時にはL2キャッシュの中身をメインメモリに退避してL2キャッシュの電力供給を止めます。
これはL2キャッシュの消費電力を節約するだけでなく、CPUのパーツの中で一番高い動作電圧が必要なL2キャッシュ(SRAM)を駆動する必要がないので、アイドルの時にCPUにかける電圧を極限まで下げることができます。
これらキメ細かい省電力機能は、以前ならばデスクトップ用CPUでは切り捨てられていてもおかしくなかった機能です。
それが一躍Core2Duoのキーテクノロジーになってしまったわけで、いかに発熱と消費電力にこだわったCPUなのかがよくわかる一面です。

もちろん、命令実行効率を向上させるための仕組みもいろいろ搭載しています。一番特徴的なのは"Fusion"テクノロジーです。
Fusion(融合)テクノロジー CPU高速化の古典的手法である「out-of-order実行」の進化系です。(単純化しすぎかもしれませんが)
当初、Fusionテクノロジーは、Micro-OPs FusionおよびMacro-OPs Fusionという異なるテクノロジーの組み合わせと考えられていましたが、Intelからある程度技術情報が出てきたことから、どうやらそうではないことが明らかになってきました。
むしろ、かつてMacro-OPs Fusionと呼ばれていた技術はMicro-OPs Fusionを含んだ技術で、
「3つ(以上?)のMicro-OPsをFusionできるようにし、かつ、異なるMacro-OPs(x86命令)間でもFusion可能にしたもの」
という理解が正しい感じがします。←あまり自信なし(^^;
参考→「Core Microarchitecture」の速さの秘密は“CISCの美”(後藤弘茂のWeekly海外ニュース)

そしてもう一つ重要なのが、(ここまでの話の流れからお気づきかと思いますが)Core2Duoはパイプライン段数が減っています。
段数を減らすことによる効果は、良いことも悪いことも含めて非常にいろいろな要素が絡んできますので、簡単に説明するのは非常に難しいのですが、消費電力の削減には大きく貢献します。
なぜならば、パイプラインの段数は直接的にCPUに集積するトランジスタ数に影響するからです。トランジスタを減らすことができれば、その分の電力は要らなくなるのは当然。
もちろん、ただパイプラインを減らしてしまったら、パフォーマンスがまるまる犠牲になってしまいます。そのデメリットを解消するために、Core2Duoはデコーダーの動作を複雑化しています。つまりMacro-Fusionが可能になったわけです。これが可能になった大きな理由として、パイプライン段数が少なくなったことによって時間的な余裕ができたことも非常に大きいのではないでしょうか。
恐らく、これでプラスマイナス0という感じでしょう。逆に省電力というメリットは残るわけで、全体としてはメリットの方が大きいというわけです。

Core2Duoは、以上のようにCPUにまつわる数限りない要素をふまえた上で、現在考え得る最良のバランス点を見事に的中させたCPUと言えるのではないでしょうか。


【実際のパフォーマンスは?】
このようないきさつで登場したCore2Duo。
パフォーマンスの高さと発熱量の少なさは素晴らしいの一言です。
詳しいことは、
Pentiumを過去へと葬るCore 2 Duoの衝撃(4Gamer.net)
「Core 2 Extreme X6800」&「Core 2 Duo E6700」ベンチマーク速報(多和田新也のニューアイテム診断室)
などを参考にして頂きたいですが、ついこの前まで最新CPUだったPentiumDが一気に過去の遺物に見えてきます。
Core2Duoに先立って登場したノート用のCPU、CoreDuoの非常に良好なパフォーマンスを見れば、だいたい予想はついていましたが…。
もう、比較するのがばかばかしいぐらいです。次元が違うと言っても過言ではないでしょう。それぐらいの違いがありますね。

2007/07/12追加
【余談~BTXとCore2Duoの関係】
ところで、PentiumDの発熱問題を一気に解決してしまったCore2Duoですが、皮肉にもその割を食ったのがBTXフォームファクタでしょう。
そもそも、BTXはPentiumDの激烈な熱をより効率的に冷却するためのフォームファクターとして登場したわけですが、今ひとつメジャーになりきれずぐずぐずしているうちにCore2Duoが登場してしまいました。その結果、BTXの存在意義自体が危ぶまれる状況に追い込まれてしまったわけで。参考→BTX仕様とは何か


2007/12/14追加
【そしてCore2Quadの登場~Phenomとの戦い】
さて、"Core2Duo"という言葉を分解して考えると、「Core2」+「Duo」です。つまり、「Core MicroArchitectureの第2世代技術を使ったDuo(2コイチの)CPU」という意味です。
Core2Duoよりさらに高速なCPUとして、「Core2Quad」なるCPUが登場しました。これも同様に分解して考えると、「Core2」+「Quad(4コイチの)」なわけです。Core3Quadではないわけです。
つまり、平たく言ってしまうと、中身のアーキテクチャは特別変化していません。更に言えば、「基本的にCore2Duoを二つ繋げただけ」のCPUです。かつて、Pentium4を2つ繋げてPentiumDを作り上げたIntelですが、それと同じ手法です。
「PentiumDで懲りずにまた同じ失敗を繰り返すのか」と当初は思いました。
ただし、今回ばかりはさすがにIntelというべきなのか、「さほど悪くない」ことが明らかになってきました。

皮肉なことに、AMDから出た対抗のクアッドコアCPU、Phenom(フェノム)シリーズの思わぬ苦戦が、Core2Quadの良さを確信させてしまった気がします。
Phenomは、はじめからクアッドコアに最適化されて設計されたCPUです。Core2Quad的な手法で作られたクアッドコアよりもパフォーマンスが出るはずです。だからこそAMDはクアッドコアCPUの市場投入時期をIntelよりもずっと遅らせてまで、ネイティブな(本物の)クアッドコアCPUにこだわったんです。
ところが、このPhenomは、Core2Quadを凌駕するどころか、かろうじて中クラスのCore2Quad同等のパフォーマンスが出る程度であることが明らかになってしまいました。(参考→“ネイティブ”は“ネイティブ?”に勝るか─Phenom出荷直前レビューなど多数)

これはかなり意外な結果です。
なぜそうなのか情報が少なくてよく分かりません。Core2Quadが高性能なのか、Phenomが低性能なのか…。普通に考えるとPhenomが思ったほど高性能ではなかったというのが真実な気がしますが…。
一般に、だいたい同じ性能のCPUとして良く引き合いに出される、Core2Quad Q6600とPhenom 9600の仕様を比べてみると以下になります。
CPU名 クロッック L2 L3 TDP プロセス
Core2Quad Q6600 2.40GHz 8MB(4MB×2) なし 95W 65nm(非High-Kメタルゲート)
Phenom 9600 2.30GHz 2MB(512KB×4) 2MB 95W 65nm SOI
これだけ見ると、Phenomにさほど不利な要素は見あたりません。
確かに、L2キャッシュの容量が小さいのは不利ですが、L3キャッシュを持っていること、クロスバースイッチで4コアが高速に接続されていることも考えれば、少なくとも4コアがフルに稼働するようなケースでは、明らかにPhenomの方が有利になると思われるのですが。
ですが、現実はそうはなっていないわけで、そうなるともっと内部的な部分で違いがあるのではないかという気がします。
例えば、命令スケジューリング効率の違いとか、キャッシュの利用効率の問題とか、案外1コアあたり512KBという少ないL2キャッシュが響いているとか…。
まあ、いずれにせよ、あまり確かな根拠がないのでわかりませんが、現実のベンチマーク結果を見る限り、Phenomが今のまま大幅にパフォーマンスアップする可能性があれば、プロセスの微細化(45nm)ぐらいしか方法が見つからないというのが正直なところ。

最近、AMDのCPUは、絶対パフォーマンスではIntelに太刀打ちできていなかったのですが、やっとPhenomで一気に巻き返すかと期待されていました。であるにもかかわらずこの結果は、ちょっと肩すかしを食らったAMDファンも多いのではないでしょうか。
逆に「急造クアッドコア」と揶揄されたCore2Quadが、案外優れたソリューションであったということを証明する役割を演じてしまっているのがあまりにも皮肉です。
■関連記事■
ベンチマーク:45nm時代到来。Yorkfield XEこと「Core 2 Extreme QX9650」(4Gamer.net)
技術解説(長文):ゲーマーにとって、CPUとは何か(4Gamer.net)
技術解説:コンピュータアーキテクチャの話(1)なぜ、マルチコアで消費電力が減るのか?(マイコミジャーナル)
技術解説(長文):Core MicroArchitectureをもうすこし(MYCOMジャーナル)
技術解説:第2回Coreマイクロアーキテクチャに迫る[前編](ITmedia)
技術解説:第3回 Coreマイクロアーキテクチャに迫る[後編](ITmedia)
まとめ情報(Core2Duoの特徴から、メモリ、電源、対応M/Bの話まで簡便にまとまっている):Core2オススメ特集(ツクモ)
資料:Core2Duo一覧(Intel)
用語:NetBurst(e-Words)
用語:P6アーキテクチャー(オンラインコンピュータ辞典)
報道:インテル、デスクトップ・ノート向け Core 2 Duo/Extreme を発表(Japan.internet.com)
ベンチマーク&技術解説:Intel Core 2 全方位ベンチマーク-新アーキテクチャの真実を見極める(MYCOMジャーナル)
技術解説(SMARTキャッシュ):コンピュータアーキテクチャの話 第20回 キャッシュの構造や働き(応用編) (MYCOM PC WEB)
技術解説:アーキテクチャから消費電力まで - CPUはなぜ"デュアルコア"になったのか? (MYCOMジャーナル)
技術解説:Conroe登場間近!予想通りの爆発的高性能に影を落とす盲点とは?
技術解説(Macro-OPs Fusion and Micro OPs Fusion):IDFでいよいよ公開「Meromアーキテクチャ」(後藤弘茂のWeekly海外ニュース)
技術解説:「Core Microarchitecture」の速さの秘密は“CISCの美”(後藤弘茂のWeekly海外ニュース)
技術解説:64bitは苦手なCore Microarchitecture(後藤弘茂のWeekly海外ニュース)
ベンチマーク:Pentiumを過去へと葬るCore 2 Duoの衝撃(4Gamer.net)
ベンチマーク:「Core 2 Extreme X6800」&「Core 2 Duo E6700」ベンチマーク速報(多和田新也のニューアイテム診断室)
説明会レポート:技術セッションで明らかにされた「Core2 Quad」の構造と性能(ITmedia)
参考:AMD Phenomクアッドコア・プロセッサ(AMD)