Hot Chips 28において、MediaTekのDavid Lee氏が同社のスマートフォン(スマホ)向けSoC「Helio X20」の発表を行った。
|
Helio X20 SoCを発表するMediaTekのDavid Lee氏 |
次の図は、スマホの使い方の年次推移を示したもので、Webブラウジングやゲーミングは減少し、ソーシャルメッセージングは微増であるのに対して、YouTubeやメールなどが増えているという。
つまり、スマホの負荷としては中程度という使い方が75%を占めており、この状態での消費電力を減らすことが重要になるという。
そして、それぞれのシナリオでどのような負荷状態が、どれだけの時間あるかを見てみると、中負荷という状態は、どのシナリオでも多く(36%~48%)、重要であることが分かる。また、ヘビーな負荷状態は時間は短いが、特定のシナリオでは重要であるという。
高性能を必要とする場合はビッグコアを使うが、ビッグコアはリーク電流も多く、負荷が軽い時に、電源電圧とクロックを下げても、電力消費は思うように減らない。ARMのbig.LITTLEは、負荷の軽い時には、リーク電流が小さく、動作エネルギーも小さいリトルコアに切り替えることにより低電力化を図るものである。
しかし、中負荷での電力効率の重要性から、MediaTekはMax(ビッグ)とMin(リトル)コアに加えてMidコアを加えた3種のコア(ギアとも呼ぶ)を使う「Tri-Gear方式」を考案した。
Tri-Gearでは、2GHzクロックのCortex-A53コアをMidとして置く。そして2.5GHzクロックのCortex-A72コアをMax、1.4GHzクロックのCortex-A53コアをMinとして配置するという構成になっている。
このMidギアは、中負荷では、Maxギアより30%電力効率が高く、Minギアより40%性能が高い。
コヒーレントインタコネクトをTri-Gear化すると、消費電力は若干増えるが、細粒度のクロックゲートを適用することで、消費電力を半減し、結果として、2-Gearの場合より低い電力を実現したという。
通常は最初にOSをブートしたMinのC0コアは常にオンにしておくが、MediaTekでは、ICAT(Intelligent Core Activation Technology)を開発し、中負荷の場合はMidのC0コアをCPU0とし、Minコアをオフにすることにより、8~10%の電力削減を行っている。
システム構成としては、MinとMidギアを非対称マルチプロセサ(Asymmetric Multi Processor)とし、AMPのMin、MidペアとMaxギアがHeterogeneous Multi Processor(HMP)という構造になっている。HMPペアの間では短時間でタスクをMaxギアに移動するインスタントブーストができるようになっている。
従来は、DVFSとHot Plugドライバは独立に入力要求を考慮していたが、Tri-Gearでは、電力と性能の両方の要求を総合してコア割り当てを判断する方式に変更した。
Tri-Gear化し、ここに述べたように制御を改善することにより、5つの使用シナリオで、12%から最大38%の電力低減を実現した。これは電池寿命に直結するので、重要である。
MediaTekは、8コアSMPのMT6592、big.LITTLEのMT6595を使うCorePilot 1.0から、Helio P10ではGPUのコントロールを統合したCorePilot2.0に進化させ、さらに、今回は、Midギアを追加したTri-GearアーキテクチャのHelio X20で12~38%のCPU部のエネルギー削減を行えるCorePilot3.0を提供する。
まとめとして、大部分の処理は中負荷から軽負荷である。そのため、中負荷で最も効率の良いMidギアを追加し、Minギアもそれに合わせて最適化した。CorePilot3.0はTri-Gearに対応するため。コヒーレントインタコネクトを拡張し、ハイブリッドのスケジューラを開発し、ギアの割り当ても全入力をまとめて考慮する方式に変更した。また、アクティブな熱管理も行っている。
そして、Tri-Gearにすることにより、最大38%のCPUエネルギーの削減を実現した。と述べた。