ARMのプロセッサは、現在、性能を重視するbigコア用、消費電力を重視するLITTLEコア用の2種類がある。それぞれ単独で動作できるプロセッサだが、ハイエンドのシステムでbigコアとLITTLEコアを組み合わせ、電力消費を考慮したスケジューリング機能を組み込んだOSを利用することで、ピーク性能を高くしたまま、平均的な消費電力を抑える「big.LITTLE」構成を使うことができる。

 これはコア自体に特別な仕組みがあるわけではなく、性能の違う同種のコアを混在させたスケジューリングが可能なソフトウエア(OS)で実現する構成だ。これを使うと、アイドル時やさほど負荷の高くない場合には、bigコアをオフにし、低消費電力のLITTLEコアのみで動作させる。処理負荷が高くなると高性能なコアで実行し、短時間で処理を終了させて、またアイドル状態へ戻る。

 このような動作を行うことで、大半の時間を低消費電力コアで動作させることができる。ARMはCortex-A57/53の発表時に、big.LITTLE構成を使えば、bigコア単体で使う場合に比べて40%の電力削減が可能だとしていた。

 このbig.LITTLE構成は、発表時には、bigコア、LITTLEコアが同数必要だったが、現在はそれぞれのコア数が異なっていても構成可能。負荷に応じて、bigコアとLITTLEコアを同時に動かすこともできるようになっている。

 こうしたことから、ARMのアプリケーションプロセッサは、大きく2種類の実装方法が使われる。今回の発表で、64ビットコアに低消費電力のCortex-A35が追加され、32ビット時代と同じく3ライン体制になった(図1)。しかし、そもそも、中間にあるCortex-A53は、当初Cortex-A57と対になるLITTLEコアとして作られたプロセッサだ。基本的には、Cortex-A7と同じ簡易なパイプラインを持ち、インオーダー実行でしかない。

図1●2016年のARMのアプリケーションプロセッサのラインアップ
図1●2016年のARMのアプリケーションプロセッサのラインアップ
(出所:ARM発表資料、ARM TechCon 2015 News)
[画像のクリックで拡大表示]

 この図を、一般的なラインアップである「ハイエンド」「メインストリーム」「ロープライス」と解釈することも可能だが、市場では、先進国ではハイエンド重視、途上国では価格重視と2極化しており、現実的には2ラインアップ体制でも十分といえる。ARM社の資料でも、表現は「High Performance」「High Efficiency」「Ultra High Efficiency」という表現がされている。また、メインストリームではbigコア(シングルやデュアルコア構成)、ハイエンドでは、クアッドコアのbig.LITTLE構成といったバリエーションも可能なので、コアの製品ラインが実質2ラインでも問題はなさそうだ。