Silvermontでは最大8コアまでサポート

Silvermontであるが、新開発のOut-of-Order実行エンジン、プロセサコア間をつなぐ新システムファブリック、CoreプロセサのWestmereレベルのSSE4.1、4.2命令などのサポートを行って性能を引き上げ、パワーマネジメントの強化で電力効率を引き上げ、22nmのTir-Gateプロセスとアーキテクチャのコデザインでより低電力、高性能を追求しているというのがハイライトである。

Silvermontでは新開発のOut-of-Orderコアやシステムファブリックなどで性能を向上し、22nm Tri-Gateプロセスとアーキテクチャのコデザインで低電力、高性能を実現

Silvermontプロセサでは、2コアと1MBのL2キャッシュをモジュールと呼び、これが構成単位となっている。システムエージェントは最大4モジュールまでサポートでき、例えば、スマホ用では1モジュール2コア、タブレット用は2モジュール4コア、マイクロサーバ用は4モジュール8コアというような使い方が考えられる。

2コアと最大1MBのl2キャッシュの組がモジュールとなり、最大、4モジュールまで搭載ができ、コア単位のクロックと電力管理をサポートする

そして、モジュールはIDI(In Die Interconnect)でシステムエージェントに接続されており、Coreプロセサのように3次キャッシュ(Last Level Cache)は持たない構成である。IDIの接続は1対1で、システムエージェントの内部に最大4モジュールとメモリコントローラ、その他のIOコントローラなどを接続するクロスバが入っていると考えられる。

Coreプロセサではリングバスを採用し、コア数のバリエーションに容易に対応できるというメリットをうたっているが、Silvermontではリングバス以前に使っていたクロスバ構造となっているが、その理由は不明である。

そして、IDIは独立のRead とWriteのチャネルを持ち、Out-of-Orderのトランザクションをサポートしており、現世代のSaltwellに比べるとメモリの利用効率を上げ、実効バンド幅を改善していると考えられる。

コアの命令アーキテクチャとしては、WestmereレベルとなりSSE4.1、4.2、POPCNTのサポート、VT-x2やEPTなどのVMサポート機能、AES-NIやIntel Security Keyなどのセキュリティ機能のサポートが追加されている

命令アーキテクチャはWestmereレベルまで向上

命令アーキテクチャとしても、従来のAtomはかなり遅れていたが、SilvermontではSSE4.1、4.2やPOPCNTなどをサポートし、CoreプロセサのWestmereレベルまで引き上げられる。しかし、Westmereの製品発表は2010年1月であり、まだ、3年あまりのギャップがある。

マイクロサーバ用には仮想化のサポートが重要であり、Intel VT-x2とExtended Page Tableなどがサポートされ、セキュリティ関係でもWestmereでサポートされた暗号処理を高速化するAES-NIなどがサポートされるようになる。

一方、SSEの後継となるAVXやAVX2は、Silvermontではサポートされない。256bit幅のデータを扱うAVXは物量が多く必要で、チップサイズを圧迫するが、Silvermontが想定する用途では必要度はあまり高くない、あるいは、GPUなどのアクセラレータを内蔵する派生SoCを作って対応するという考えではないかと思われる。

従来のAtomでもソフト制御のターボ機能はあったが、Silvermontではハードで細粒度で高精度のターボ(バーストモード)制御を行い、コアとGPUなどとの間の電力配分を制御する

また、電力管理は、従来のC6ステートはコアもキャッシュも電源をオフするというやり方でWake upに長い時間がかかっていた。これに対して、Silvermontではコアの電源をオフにした状態で、L2キャッシュを分割して、スヌープ応答などを続ける部分と、データをメモリに書き戻して電源オフにする部分に分け、動作部分も電源電圧を下げて短い時間でWake upできるステートを追加している。また、C6ステートもL2キャッシュの電圧をさらに下げ、クロックも止めてデータの保持だけを行うようになっている。

Tri-Gateトランジスタはシリコンチャネルの両側にゲート電極があり、チャネルに流れるリーク電流を減らす効果があり、L2キャッシュの一部を保持状態にしておいても消費電力が少ないということを利用してWake upタイムを短縮するステートを設けたわけである。Wake upタイムの短縮は、単にレスポンスが良くなるというだけでなく、より深いスリープ状態に入り易くなり、消費電力を減らす効果がある。

そして、Tri-Gateトランジスタでリーク電流が減り、コア内部でもこまめなクロックゲートやパワーゲートを徹底し広いダイナミックレンジを実現しているという。

低消費電力から高性能まで幅広く対応可能な構成を採用

ARMプロセサではbig.LITTLEという方式で、大小2種のコアを使い、高性能が必要な場合は大コアを使い、性能が低くてよい場合は消費電力の小さいコアに切り替える。しかし、切り替えに時間がかかり、エネルギーも消費するという問題がある。

横軸が性能、縦軸が電力で、赤い線がARMのbig.LITTLE、青い線がSilvermont

これに対して、Silvermontは性能が低くてよい場合は、動作が必要ない部分は自動的にクロックゲートやパワーゲートが行われて消費電力が減り、Tri-Gateトランジスタのリーク電流が少ないこととあいまって、低消費電力になる。したがって、コアの切り替えなしに低電力から高性能まで広いダイナミックレンジで動作する。

結果として、Silvermont(SLM)と現世代のSaltwell(STW)の性能や電力を比較すると次の図のようになる。

左がシングルスレッドの比較、右が全コア、スレッド動作の場合の比較。シングルスレッドのピーク性能は2倍、1.5Wのコア電力での性能も2倍、同じ性能での電力は1/4.7倍。チップ全体のマルチスレッドのピーク性能は2.8倍、等電力での性能は2.5倍、同じ性能での電力は1/4.4倍

発表の中でSilvermontコアのIPC(Instruction Per Cycle)はSaltwellコアの50%アップという回答があり、シングルスレッドのピーク性能が2倍ということは、クロックは1.33倍になっている計算である。そして同一パワーでの性能も2倍で、同一性能とすると消費電力は1/4.7に減少する。

SaltwellもSilvermontも2命令を並列にデコードするプロセサであるが、この50%のIPCアップはOut-of-Order実行、分岐予測の改善、演算器のレーテンシ短縮、メモリアクセスのOut-of-Order処理やプリフェッチの改善などで実現されていると見られる。なお、PC向けのCoreプロセサは4命令並列デコードであり、同じOut-of-Order実行でも、2命令並列のSilvermontは少ないハードウェア量で実現でき、消費電力も小さくなる。一方、IPCとしてはCoreプロセサには及ばないと考えられる。

Saltwellは2コア4スレッド、Silvermontは4コア4スレッドで動作させた場合、Silvermontは、ピーク性能は2.8倍、等電力での比較では性能2.5倍、等性能での消費電力は1/4.4倍となっている。当然であるが、ハイパースレッドで2スレッドを動かすよりも、1コア1スレッドで動作させた方が高い性能が得られているが、消費電力的にはシングルスレッドでの比較より、多少、スコアが下がっている。

そして、競合する製品との性能比較は、同一コア数での性能は2倍、最大性能での消費電力は1/4.3倍という結果を示した。

競合するARMベースのプロセサとの性能と消費電力の比較(Intel推定)

この結果はSPECint rate_base2000ベンチマークの性能での比較で、他社のプロセサは、同時期に発売されると予想される競合製品についてIntelが想定した仕様に基づいて推定している。Intelに都合の良い数字になっている可能性があり、この数字自体を100%信じることはできないとしても、Silvermontの性能と消費電力が優位であることは間違いないと思われる。

この比較はコア電力1.5Wのタブレット向けでの比較であるが、次の図に示すように、コア電力1Wのスマホ向けの比較でも、競合するARMベースのプロセサの1.6倍の性能、1WのSilvermontコアと同性能を実現する場合の競合製品の消費電力は2.4倍となっている。

スマホ向けのコア電力1Wでの競合ARMベースプロセサとの性能と消費電力の比較

このようにSilvermontは、新開発のOut-of-Orderコアとシステムファブリック、そして改善された電力管理を持ち、22nm Tri-Gateプロセスとのコデザインで高性能、低電力、そして大小コアの切り替えなしで広いダイナミックレンジを実現しており、競合するARMベースのプロセサに対して高い競争力を持つと予想される。