笠原一輝のユビキタス情報局

さらに明らかになったYonahの姿
~拡張されたC4ステートでさらなる省電力を



 23日から米国サンフランシスコで開催中のIntel Developer Forum(IDF)における話題の中心は、Intelが“次世代のマイクロアーキテクチャ”と呼ぶ新世代プロセッサ「Merom(メロム、開発コードネーム)」や「Conroe(コンロー、開発コードネーム)」など、2006年後半にリリースされるCPUだが、2006年第1四半期にリリースを予定しているNapaプラットフォームの最初のCPUとして登場する「Yonah(ヨナ、開発コードネーム)」と呼ばれるデュアルコアCPUに関する情報もいくつかアップデートされている。

 本レポートでは、IDFで行なわれた説明会などで明らかにされた、Yonahの最新情報をお届けしていきたい。


●共有キャッシュにより最適化されたデュアルコアを実現するYonah

 ユーザーにとってのYonahの魅力は、モバイルPC向けとしては初めてのデュアルコアCPUであるという点だろう。

 デュアルコアとしてのYonahの最大の特徴は、共有されているL2キャッシュに見て取れる。これまで登場したデュアルコア、例えばIntel自身のPentium Dや、AMDのAthlon 64 X2などは、いずれもそれぞれのコアにL2キャッシュを搭載していた。これに対して、Yonahでは2つのコアがキャッシュを共有するという仕組みを採用している。

 ユニークなのは、それぞれのコアに割り当てるL2キャッシュの容量は動的に変更できることだ。例えば、2つのコアのうち1つめのコアが1.5MBを利用して、2つめのコアは0.5MBだけ利用するという割り当てができる。この割り当ては動的に変更可能で、CPUのニーズにより逐次変わっていく。

 それぞれにL2キャッシュが用意されているPentium Dのような場合には、片方のコアのキャッシュがあまり使われていなくても、それをもう一方に割り当てることはできないため、効率という点で共有キャッシュにやや劣る。

Yonahの詳細を説明するスライド Yonahの基本的なアーキテクチャ。最大の特徴は共有型のL2キャッシュを備えていること YonahはL2キャッシュの割り当てを動的に変更することができる。これにより、キャッシュ容量を効率よく利用することができる

●マイクロ命令実行時の効率改善によりメディア処理時の能力を改善

 Yonahのもう1つの特徴は、Intelが“Digital Media Boost”と呼ぶ、メディア処理能力の改善だ。Intel モバイルマイクロプロセッサグループ CPUバリデーションマネージャのロニー・コーナー氏は「Yonahでは内部構造の見直しにより、SSE命令実行時の効率を改善している」とのべ、その具体例としていくつかの改善点を示した。

 YonahではSSE命令のデコーダのスループットを改善している。例えば、これまでSSE命令を利用した加算を行なう場合、4つのマイクロ命令に分割して実行されていたものが、1つのマイクロ命令で実行できるようになっているという。この他、SSE2でシャッフルやアンパックといった命令を実行する場合に、無駄な演算を無くすことなどにより演算にかかるレイテンシを削減している。これにより、ケースによっては30%近く効率を改善できるという。

 また、新たにPrescottでサポートされたSSE3にも対応しているほか、浮動小数点演算時にデータのプリフェッチを行なうなどして性能を改善しているという。

 Banias/Dothanでは、こうしたメディア処理の性能は、弱点と言われ続けてきたが、これらの改良により、Yonahでは以前よりはメディア処理の性能が改善されることになる。

Yonahではメディア性能の改善が1つのテーマになっている Yonahではマイクロ命令を改善することで、無駄な命令を減らしてSSE命令実行時の性能を向上させる
SSE2のシャッフルやアンパック命令実行時の効率も改善 浮動小数点演算の性能も、データのプリフェッチやバッファーの追加などにより改善している

●C4よりもさらに省電力を実現する“Enhanced Deeper Sleep”

 Yonahでは、“Intel Dynamic Power Coordination”と呼ばれる省電力技術が搭載されている。これは、CPUの状態を、それぞれのコアごとに変化させる仕組みで、例えば、2つのうちの1つのコアがスリープ状態で、もう1つのコアだけ動作させるという使い方が可能になる。

 OSによるCPU利用率が低く、シングルスレッドの処理しか行なっていない場合には、2つあるCPUコアのうち1つは遊んでいる状態になるので、それをスリープさせることで、CPUの消費電力を少しでも下げよう、という試みだ。

 ACPIではCPUの電力の状態をC0~C3の4段階で規定されている。それぞれどのような状態かと言えば、次のようになっている

・C0 通常動作状態:OSなどでアプリケーションなどが実行されている
・C1 Halt状態:Halt命令の実行によりCPUコアのクロックが停止
・C2 クロック停止:CPUコアとバスのクロックが停止
・C3 Deep Sleep:クロック生成機も停止
・C4 Deeper Sleep:Vcc(CPUへの供給電圧)を低減

 CPUはC0>C1>C2>C3と徐々にステートを変更していくことで、CPU内部のクロックを停止していき、徐々にCPUの動作を止めていくことをやっている。

 さらにIntelでは独自にC4と呼ばれるモードを設定している。IntelがDeeperSleepと呼ぶモードで、130nmで製造されたモバイルPentium IIIあたりからこのモードが追加された。C4ではCPUに供給される電圧(Vccというパラメータで設定されている)を低下させ、CPUの消費電力をさらに低下させている。

 YonahではそれぞれのCPUコアが動作状況に応じてC0からC3の間を行き来する。例えば、1つめのコアがC0(動作状態)にある時に、使われていない2つめのコアはC3へと移行する、などの動きをする。ただし、Yonahでは供給される電圧は1系統しかないため、C4へ移行する場合には、2つのコアがそろってC4へ移行する必要がある。

 IntelはYonahにおいて、“Enhanced Deeper Sleep”あるいはDC4と呼ぶ、さらに拡張されたC4ステートを追加している。このDC4ではL2キャッシュに供給される電圧も低下し、さらにCPUの消費電力を低下させる。ただし、供給電圧を下げることは、L2キャッシュの電源を切るのと同じことなので、L2キャッシュの内部に蓄積されているデータはメインメモリに待避させる必要がある。このため、YonahではDC4に移行する前に、キャッシュの内容をメモリに書き出してからDC4ステートへ移行することになる。

Yonahでは従来のC0からC4に加えてDC4と呼ばれる拡張されたDeeperSleepモードが追加された Enhanced Deeper Sleepでは、L2キャッシュの内容をメモリに待避させた後で、L2キャッシュの電圧を落としてさらなる省電力を実現する

●平均消費電力はDothanと同レベルまで下がっているとIntel

Yonahのデザインを開始した際にはDothanの5倍もの平均消費電力になってしまっていたが、さまざまな省電力の技術を実装することで、最終的にはDothanとほぼ同じレンジにまで下げることが可能になった

 気になるのは、こうした改良がYonahの平均消費電力の低下に貢献しているかどうかだ。平均消費電力の増大とバッテリ駆動時間は反比例の関係にあり、平均消費電力が増大すれば、それだけバッテリ駆動時間は減ることになる。

 コーナー氏は「これらの新しい省電力機能などにより、Yonahの平均消費電力は、シングルコアであるDothanコアのPentium Mと同じレンジまで下げることが可能になった」とのべ、Yonahの平均消費電力がDothanと同じレンジまで下げることに成功していると説明した。

 すでに以前の記事でも指摘したように、IntelはOEMベンダに対して、Yonahの平均消費電力は、Dothanと同じレンジかやや増えている程度にとどまっていると説明しており、コア数に比例して、平均消費電力が大幅に増えることはないという。

 OEMメーカー筋の情報によれば、Napaプラットフォームでは、チップセットの平均消費電力がSonomaプラットフォームに比べて低下しているという。このため、Carmel(最初の世代のCMT)からSonoma(現行のCMT)への移行時にみられたような、バッテリ駆動時間の減少はあまり心配しなくてもよさそうだ。

●2006年後半にはYonahからMeromへと移行していくNapaプラットフォーム

 すでに述べたように、2006年後半にはYonahの後継としてデスクトップPCやサーバー/ワークステーションと共通のマイクロアーキテクチャを採用したMeromが投入され、チップセットの「Calistoga」や無線LANモジュールの「Golan」と組み合わせたNapaプラットフォームとして投入される。

 Meromは、Yonahでは対応していなかったEM64Tに対応しているほか、キャッシュ容量は4MBに拡張される。また、公式には語られていないが、OEMベンダ筋の情報に寄れば、いくつかの新しい拡張命令も実装される予定であり、メディア処理能力がさらに強化されることになる。

 MeromはYonahとピン互換になっており、ノートPCベンダはYonahをMeromに置き換えるだけで、Merom搭載のノートPCを製造することが可能になる。ただし、熱設計消費電力はYonahが31Wであるのに対して、Meromは35Wになっており、あらかじめノートPCベンダは35WのCPUを搭載することを前提にシャシー設計をしておく必要がある。

 実際、ほとんどのノートPCベンダはNapa世代のノートPCを35Wを前提に設計しており、おそらく多くの製品が第3四半期の段階でYonahからMeromへ載せ替えた製品をリリースしてくることになるだろう。

【IntelのモバイルPC向けCPUの機能比較(筆者作成)】
 BaniasDothanYonahMerom
製造プロセスルール130nm90nm65nm65nm
CPUコア数1122
システムバス400MHz400/533MHz667MHz667MHz
L1キャッシュ64KB64KB64KB?
L2キャッシュ1MB2MB2MB4MB
VT--
SSE/SSE2
SSE3--
EM64T---
XD(NXビット)-
パッケージμPGA479/μBGA479μPGA479/μBGA479μPGA479/μBGA479?

□関連記事
【8月24日】【笠原】Yonahへの“刺客”として投入されるAMDのデュアルコアTurion 64
http://pc.watch.impress.co.jp/docs/2005/0824/ubiq120.htm
【7月20日】【笠原】なぜYonahはEM64Tに対応しないのか
http://pc.watch.impress.co.jp/docs/2005/0720/ubiq119.htm

バックナンバー

(2005年8月25日)

[Reported by 笠原一輝]


【PC Watchホームページ】


PC Watch編集部 pc-watch-info@impress.co.jp ご質問に対して、個別にご回答はいたしません

Copyright (c) 2005 Impress Corporation, an Impress Group company. All rights reserved.