このページの本文へ

ロードマップでわかる!当世プロセッサー事情 第72回

Core iシリーズにも使われる「SMT」の利点と欠点

2010年10月14日 12時00分更新

文● 大原雄介(http://www.yusuke-ohara.com/)

  • この記事をはてなブックマークに追加
  • 本文印刷

SMTによる3つの利点

 こうしたSMTの利点を挙げると、以下のようになる。

  • 性能向上
  • レイテンシー遮蔽
  • 省電力

 まず性能向上だが、これは純粋に2つのスレッドを同時に実行できるようになるためで、その分の性能改善が期待できる。ダイサイズが5%増えるだけで性能が増えるのだから、これは美味しい技である。もっとも無尽蔵に性能が改善できるわけもなく、一般には30%程度とされている。

 あくまでもSMTは、「実行ユニットが空いている場合に、ほかのスレッドの処理をそこに埋め込む形で実行ユニットを効率よく利用する」という技術だから、仮に実行ユニットがフルに使われていたりすると、むしろオーバーヘッドになってしまう可能性もある。

図4

図4 SMTによるレイテンシー遮蔽の例。上はシングルスレッド、下はSMTでの2スレッド実行

 次のレイテンシー遮蔽であるが、これは広義には性能改善に含まれる項目である。図4上段のように、2次キャッシュからデータを取り込んで加工するスレッドがあったとする。これを単独で実行すると、2次キャッシュのアクセス待ちが定期的に発生するので、パイプラインの利用効率はあまりよろしくない。

 そこで、同じようなスレッドを2つ同時に走らせた場合、一方のスレッドが2次アクセス待ちの最中に、別のスレッドが実行できることになるので、見かけ上2次アクセスの待ちがないように扱われることになる。これは特にマルチスレッド化しやすい処理でよく利用される(エンコーダーや3D CGレンダリングなどが好例)。

 3つ目の省電力はちょっとわかりにくいが、SMTを利用することで性能が上がるなら、逆に必要とする処理性能を実現する際に、動作周波数を落とすことが可能になるということだ。組み込み向けプロセッサーにおける事例だが、例えばインフィニオン・テクノロジーズが車載向けなどに販売中の「TriCore 2」は、レイテンシー遮蔽による処理性能向上とともに、消費電力低減がSMT採用の大きな動機であることを、2003年に開かれた組み込み系のイベント「Embedded Processor Forum」で発表していた。

マルチスレッディングと省電力についての講演スライド

インフィニオンによるマルチスレッディングと省電力についての講演スライド。SMTで性能が上がるので、400MHz→250MHzに動作周波数を下げられ、動作電圧も下げられるとともにリーク電圧の少ないHigh Vtトランジスタを利用できる。レイテンシーも遮蔽できるので、キャッシュメモリーを減らせるし、外部メモリーも低速・省電力なものが利用できる

 3番目はともかくとして、この性能改善のためのSMTは、非常に幅広く利用されている。x86に関しては、今のところインテルだけだが、Pentium 4/Dから始まり、AtomやNehalem、2011年のSandy Bridgeでも利用される。

 一方x86以外では、MIPS Technologiesの「MIPS32 74K」や、MIPS64を独自に拡張した米NetLogic社の「XLR」シリーズ、米Cavium Networkの「OCTEON」シリーズに、IBMの「Power」シリーズ、さらには最近オラクルの傘下になったサン・マイクロシステムズの「Niagara」など、特にハイエンドプロセッサーではかなり多く利用されている。

 ほかにも身近なところでは、プレイステーション3に採用されている「Cell/B.E.」に搭載された「PPE」(PowerPC Processor Element)には、PowerPC 970をSMT化したものが搭載されている。

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン