2011年11月28日月曜日

プロセッサの抱える消費電力の問題

http://pc.watch.impress.co.jp/docs/column/kaigai/20111128_493449.html?ref=rss
ARMの「big.LITTLE」技術より

ARMやNVIDIAのTegra3が進めるハイパフォーマンスプロセッサ+アイドルプロセッサ

の構成

細かい仕様は異なるものの今までのx86プロセッサでIntelのTurboBoost、AMDのTurboCoreとは異なるアプローチである。

だがしかし、共通する点がある。

それは電力タイムシフトを基準とした発想から来ているという事だ。

上記の記事にもあるように持ち運びを前提とした場合、バッテリーの容量には限りがある。更にバッテリーの進化は年に11%とローペースである。

バッテリーの進化が2倍とすればプロセッサ(CPU・GPU)10倍近以上の進化をしていると私は想像する。

バッテリーの進化が期待出来ないとして、プロセッサの性能を犠牲にする事は出来ない。そこでいかにプロセッサの電力消費を効率良く行うかが課題となる。そこでアイドル時の消費電力を低く抑える必要があるが消費電力を左右する電圧、クロックを下げるには限界がある。

またマルチプロセッサの場合、消費電力もコア数分消費するためアイドル時の消費電力は必然的に上がる。

当然無駄も多い事になる。

intel、AMDのx86系プロセッサの考え方はここまでで止まっている。つまり動作電圧を低く抑えてアイドルの周波数も抑えている。

IntelSpeedStepから始まった初歩的な技術であり、TurboBoostはそれの延長線上にあたる。

つまり平均クロックを3GHzと設定した場合3.4Ghzをピーククロック、1.2GHzをアイドルクロックとする。その場合、ピーククロックは短時間のみ作動し、ある一定時間で区切った場合にその平均が3GHzで動作したとなる。

ARMの考え方はその次のアプローチとして出てきたもの。

上記で説明した通りx86系の考え方の欠点は、あくまで瞬発的な性能向上が必要な場合が多いということに着眼した結果であって、アイドルクロックの下限値は今まであまり大きくは変化していない。また電圧は徐々にであるが下がっているもののここにもまた壁が存在している。

そのため今後はアイドルクロック、電圧ともに下げる事は困難になっている。

そこでARMはその小さなダイサイズをうまく利用し、マルチコアプロセッサとシングルかつ最低限の昨日を備えたプロセッサを用意した。

こうする事でそのプロセッサを動的に変更する事でアイドル時の電力消費を大幅に抑える事に成功している。

ただし、当然のことであるがマルチコアプロセッサがフル稼働した場合は効果はない。

だがモバイル用途においてもそうだが、一般的にフル稼働する機会はあまり多くない。


ならIntelやAMDもそうすればいい

という事になるのだが話はそう簡単にはいかないはずだ。元々の設計が完成しきっているためにメモリ共有などの再設計が必要になる。

またシングルコアプロセッサを内蔵するだけのスペースを用意するのは現状では難しい。

最も現実的な方法でそれを実現するならば、Intelが近い事を行おうとしているがコアをそれぞれ非同期で動かし、必要に応じて段階的にコアを稼働させる事が出来ればARMと近い事が出来ると私は思う。

近い将来そういった製品が出る・・・かも。


そんな事を思ったのでした。

ではでは







0 件のコメント: