省電力型と性能追求型、2つのコアでスマホを進化させるARM

ARM社は19日に「Cortex-A7」プロセッサーと「big.LITTLE Processing」を発表した。このうちCortex-A7は、簡易なパイプラインを採用し、電力効率を高めたプロセッサーだ。
 Cortex-A7は最高性能という点では決して高いものではない。名前も“A7”と、iPhone 4でも用いられるなど、2010年までのスマートフォンで主流のコアだったCortex-A8からは、一世代前に戻ったように見えるが、実は話はそう単純ではない。

 たとえば45nmプロセス以前に設計されたCortex-A8はクロック周波数が1GHz止まりだったが、28nmプロセスで製造したCortex-A7は1GHz以上のクロック周波数が利用可能で、かつ同じクロック周波数であればCortex-A7のほうが性能は高い。つまり単体でも低価格スマートフォンに利用できる性能を持つのだ。

 Cortex-A7が電力消費あたりの性能を高めた省電力型とすると、最高性能を追求したCortex-Aシリーズの最上位には「Cortex-A15」プロセッサーがあり、こちらはアウトオブオーダー機構などを採用する高性能タイプだ。

 しかし、プロセッサー性能が高くなると、その分消費電力が増えてしまう。クロック周波数や電源電圧を下げることで、ある程度消費電力を減らすことはできるが、回路規模の小さなプロセッサーと比べると消費電力は増えてしまう。また不要な回路の電源やクロック供給を落とす技術はあるものの、これはアイドル時の消費電力を減らすもので、動作時の消費電力を大きく削減するものではない。

 そこでARM社は、高性能が必要なときにはCortex-A15を、負荷が低いときにはCortex-A7へと切り替えることで、プロセッサーの消費電力を大きく下げるテクノロジーを発表した。これがbig.LITTLE Processingというわけだ。

 big.LITTLE Processingには「big.LITTLE Task Migration」と「big.LITTLE MP」の2つの種類があり、前者は仮想化機能を使いて内部ステートを保存し、プロセッサーを切り替えた後、他方へ内部ステートを読み込んで電力効率の違うプロセッサーを利用する技術だ。もう1つのMPはOSのスケジューラーに手を加え、Cortex-A15とCortex-A7で適切なほうにタスクを割り当てる。負荷の低い処理は電力効率の高いCortex-A7で、処理性能が要求されるスレッドはCortex-A15で実行するわけだ。

Cortex-A15は、2012年あたりから登場するとされており、この世代のシステムでは、big.LITTLE Processingにより、バッテリー寿命が伸びることが予想される。ARMによればCortex-A15単体で構成した場合に比べ、big.LITTLE Processingを採用すると1.7倍程度、バッテリー寿命が延びるとしている。

 Cortex-A15、Cortex-A7ともにARMv7のプロセッサであり、ソフトウェアは互換性がある。しかし大きな違いは、そのパイプラインだ。Cortex-A15はアウトオブオーダー、3命令以上の同時発行が可能なプロセッサだ。また、仮想化支援機能を持ち、システム仮想化に対応できる。

 これに対して、Cortex-A7は、インオーダーで制限付きの2命令同時発行であり、そのパイプラインはシンプルなもの。ただし、仮想化支援機能を備えており、OSを含むソフトウェアからみるとほぼ同一となっている(一部違いがある)。最大4GBの2次キャッシュが利用可能なほか、Cortex-A15と同様に高速な内部バスが利用でき、メモリコントローラーとの接続帯域も広い。

 このCortex-A15とCortex-A7の性能比、電力効率比を示したのが下の写真だ。Cortex-A15とCortex-A7では2〜3倍程度の性能比になるが、電力効率でみるとCortex-A7は、Cortex-A15の2.3〜3.8倍もある。たとえば、整数演算(Dhrystone)であれば、Cortex-A7はCortex-A15の半分程度の性能しかないものの、同じ処理をおこなった場合には28%(電力効率の逆数から)の電力しか消費しないのだ。

 この差を利用して、それほど性能を必要としない場合には、CPUをCortex-A15からCortex-A7に切り替えることで、電力消費を3割以下に下げることが可能になるわけだ。

 ARMで、実際の利用環境を調べてみたところ、一日の利用のうちCortex-A15を必要とする処理時間はわずか12%程度しかなかったという。また、アプリケーションの種類別に必要な処理速度を見た場合でも、処理時間の多くはあまり高い性能を要求しないものだったという。

 さて、2つのコアを切り替えるbig.LITTLE Task Migrationだが、Cortex-A15/Cortex-A7では、ぞれぞれのブロックで2次キャッシュを共有し、この2次キャッシュ間をCCI-400(Cache Coherent Interconnect)で接続して、「同一性」(コヒーレンシ)を保つようにしてある。

また、仮想化支援機能では、仮想マシンとして動作しているプロセッサーの内部状態を完全にメインメモリへ保存することができる。big.LITTLE Processingは、この機能を利用する。

 たとえばCortex-A15からCortex-A7に切り替える場合、動作中のCortex-A15がCortex-A7を起動させる。Cortex-A7が起動すると、Cortex-A15はプロセッサー状態を完全に保存する。これをCortex-A7が読み込んで状態を復帰させ、Cortex-A15が実行中だった処理を継続する。

 このとき両方の2次キャッシュは、同一性が保たれるようにコピーが行なわれる。双方のキャッシュの同一性が保たれたあと、Cortex-A15は、キャッシュをクリアし、自身の電源を切る。逆に、CPU負荷があがり、Cortex-A7では手に負えなくなりそうになると、Cortex-A7が休み、Cortex-A15が動きはじめる。

 この切り替えは、仮想化システムでの「マイグレーション」(動作中の仮想マシンを他のマシンで動かすこと)に似ている。仮想化システムのマイグレーションは、通常システム障害などで行なわれるものだが、big.LITTLE Processingでは、これを負荷状態を条件に切り替え、システムの電力効率を高めるために使っている。

 切り替え(ブラックアウトタイム)は20ms以下とされているがデバイスの状態などにより、一定の値ということではなく、最悪値として20ms程度ということであると推測される。

 このbig.LITTLE Task Migrationでは、仮想化機能でいう「ハイパーバイザー」に相当するものはARM社から供給され、OSやアプリケーション側は、特に対応は必要ないとされている。またbig.LITTLE MPについては、Linuxのスケジューラーに手を入れたものを提供する予定だという。



クリスマスファイバーツリー 180cm
このクリスマスファイバーツリーは、贅沢にもファイバー部分に星を散りばめたゴージャスなクリスマスファイバーツリーなのです!5色の織り成す幻想的なイルミネーションが、とっておきのクリスマスを貴方にプレゼントしますよ♪


ブラックファイバーツリー 90cm
このブラックファイバーツリーは、クリスマスの演出には欠かせない華やかなファイバーの輝きとともに、ホワイトLEDがより鮮やかな光を楽しめます。照明を落とした時の光り方はさらにロマンチックなクリスマスを演出してくれます。家庭用にご自宅で飾るもよし、店舗でのクリスマス演出にも重宝します。


ふるさとのれん
お店で見かける「おでん鍋」がご家庭用にも登場しました!焼杉風の木枠や蓋で、手軽におでん屋さんの雰囲気が味わえます。温度調節はダイヤル式で簡単♪おでん以外でも煮る、茹でる、焼く、蒸す、炒めるの1台5役でオールシーズンお使いいただけるおススメの商品です。


テビロン 肌着
このテイジンテビロン肌着は、外気に素早く対応し、いつでもポカポカの体温を一定に保ってくれるあったかインナー♪肌触りも柔らかで、寒い日も、薄着でノビノビとお過ごしいただける健康肌着です。


マルチクイック コードレス
ブラウンマルチクイックMR730CCは、混ぜる・つぶす・きざむの、3つの機能を搭載。離乳食作りに励むままにも人気です。ご出産のお祝いに最適ですよ☆手作りスープやソース、ドレッシング、マヨネーズ、健康野菜ジュースなどなど・・・。大量の下ごしらえにも便利です。


夢日和
温熱治療器 夢日和はベルトタイプで、肩に掛けたり、お腹に巻いたり、膝に巻いたり、さらに寝そべって腰に乗せたりと、ひとりでもラクに扱える手軽な温熱治療機です。夢びより は、3段階の温度調整が可能です。内部は熱伝導性と保温性を高める6層構造になっています。重さもわずか1キロと軽量。コンパクトサイズで収納場所もとりません


かまどさん
かまどさんは、長谷製陶の土鍋炊飯器です。長谷園のかまどさん で、炊いたおいしいごはんを堪能しませんか?火加減要らずで簡単です。玄米や雑穀米も炊けますよ♪保温性にも優れ、冷めてもご飯がベトつかず、炊きたての美味しさが長持ちします。かまどさんで毎日炊き立てのおいしいごはん♪