マイクロアーキテクチャーの違い (その2) ―― Woodcrest VS Dempsey ――

2006/6/23 - トピックメーカー/田中伸一

 今回は、分岐予測ミスのペナルティやメモリー・アクセス時のレイテンシーに関連する部分に着目してみた。

パイプライン Intel NetBurst マイクロアーキテクチャーのパイプラインは、クロック・スピードを追求していった結果、最新のプロセッサーでは 31 ステージという深さである。それに対してインテル Core マイクロアーキテクチャーのパイプラインは 14 ステージと半分以下。一般にパイプラインが深いほど、高クロック化が可能になるが、分岐予測ミス時のペナルティ、つまり、正しい分岐先の命令をパイプラインに取り込みなおすために要するクロックも、パイプラインのステージ数に応じて大きくなる傾向にある。それを考えると、インテル Core マイクロアーキテクチャーは、クロックの高速化にこだわらなくなったことが、ペナルティの低減につながっていると言える。

L2 キャッシュ どちらも L2 キャッシュの総容量は 4 MB と変わらないが、Woodcrest は 4 MB×1 の共有タイプ、Dempsey は 2 MB×2 の独立タイプを採用する。2 つのコアが利用できるキャッシュ・リソースは、Dempsey では 2 MB に制限されるが、Woodcrest では 4 MB を上限に動的に配分できる。また、独立タイプは、各コアが要求したデータを個別に取り込むため、場合によってはキャッシュ同士でデータの重複があるが、共有タイプではそうしたリソースの無駄遣いはない。そういう意味で、Woodcrest の方はキャッシュ・リソースの利用効率が高いと言える。更に、注目したいのは、L2 キャッシュ―メモリー・コントローラー間のバス帯域幅。Woodcrest は、プロセッサーあたり 1 つの共有 L2 キャッシュがバスと接続される。一方 Dempsey は、プロセッサーあたり 2 つの独立 L2 キャッシュが帯域を分け合うことになる。従ってこの点でも Woodcrest に分がある。加えて、インテル Core マイクロアーキテクチャーの“スマート・メモリー・アクセス”は、2 つのコアにつき 8 つのプリフェッチャーがデータ参照パターンを検出し、コアが要求するより先に、データを取り込むことができる。

 以上見てきたように、Woodcrest が持つパフォーマンス上の優位性は、メモリー周りの性能や並列処理性能の向上に加え、キャッシュ・ミスや分岐予測ミスに伴うペナルティや、メモリー・アクセス・レイテンシーの低減に貢献する上記のような仕組みなど、総合的な要因がバランスよく調和した結果だと言えるだろう。

記事アーカイブ

IT Manager's Desk の記事をテーマごとにまとめ読み。

  • IAストラテジー
    • IAとビジネスの新しい展望を解説します
  • IAサーバー
    • IAサーバーの最新動向をレポートします
  • ビジネスPC
    • ビジネスとITの現場を変える最新PCソリューションをお伝えします
  • 事例ウォッチ
    • IAを活用してビジネスを切り拓く、注目の導入事例をピックアップします


新着ビジネスPC