Hot Chips 26において、IntelはIvyBridgeアーキテクチャのサーバプロセサ「Ivytown」について発表を行った。もう、すでにHaswellの時代になっており、なぜ、今更、旧世代のIvyBridgeの発表をするのかと思われるかも知れないが、サーバ用のE5、E7系に関してはまだHaswellアーキテクチャのコアを使う製品は出ておらず、IvyBridge系のサーバチップが最新の製品なのである。

Ivytownプロセサを発表するIntelのIrma Esmer氏

IvyBridgeアーキテクチャのXeon E5とE7サーバプロセサは、SandyBridgeアーキテクチャのE5と、さらにその前のWestmereアーキテクチャのE7を更新する製品であり、SandyBridge E5の2ソケット製品と比較すると、最大50%、性能とエネルギー効率が改善され、Westmere E7 4ソケットの製品と比較すると、最大で性能は倍増であるという。

IvytownベースのE5/E7製品の位置づけと15コアチップのチップ写真

Ivytownは最上位のサーバ向けのチップであり、8ソケットまではグルーレスで直結できる機能を持ち、拡張ネットワークコントローラ(XNC)を使えば、さらに多くのチップを接続できるアーキテクチャとなっている。

また、Ivytownチップは、すべての機能が入ったスーパーセットのアーキテクチャになっており、プロセサコアが15個、2つのメモリコントローラ、2つのホームエージェント、3本のQPIリンク、合計40レーンのPCIe Gen3を集積し、RASも強化されている。

Ivytownは15コアを集積し、すべてが入ったスーパーセットになっている

そして、最上位の製品だけでなく、コア数の少ない派生品も容易に作れるように考えられており、右側のChop-able Columnと書かれた部分を切り落とすと10コアのチップになり、さらにChop-able Rowsと書かれた部分も切り取ると6コアのチップができる。このようにして、比較的小さな手間で、15/10/6コアの3種のダイを設計している。

Chop-ableと書かれた部分を取り除いたダイを作り、10コア、6コアのチップを作っている

前の図の方が大きくて見やすいが、コアと2.5MBのLLC(Last Level Cache)をペアとしたものがスライスと呼ぶ構成単位で、縦に5個のスライスが並んだ列が3列あるという形になっている。そして、1列と2列を回るリング、2列と3列を回るリングと1列と3列を回るリングという3つのリングでこれらを接続している。また、リングには、CPUチップ間を繋ぐQPIのエージェントやPCI ExpressなどのIOコントローラ、そしてホームエージェントとメモリコントローラも接続されている。

それぞれのリングの情報の伝送は1方向であるが、その方向は次の図のように、外周(列1と3を回る)のリングの方向を時計回りと反時計回りにダイナミックに切り替えることができるようになっている。

15スライスとホームエージェントなどを3つのリングで接続している。リングの情報伝達は1方向であるが、回転方向はダイナミックに切り替えられる

ホームエージェントとメモリコントローラは2組あり、それぞれがDDR3 4チャネルをサポートしている。そして、DDR3の速度も1867Mzまで引き上げられたので、ピークメモリバンド幅は119GB/sとなっている。ホームエージェントは、接続されているメモリに対してキャッシュライン単位で、どのノードにキャッシュされ、その状態がどうなっているのかを管理し、マルチノード(ソケット)間のキャッシュコヒーレンスを維持するためのメカニズムであるが、他ノードにあるキャッシュラインの状態を保持するエントリを512個に増加し、第2レベルのエントリを128にしたと書かれている。第2レベルのテーブルは、第1レベルのエントリが不足した場合に使う粗い(多くのキャッシュラインの状態を1つのエントリに纏める)テーブルかと思われるが、説明がないので詳細は分からない。

そして、メモリコントローラ内部のRead、Writeのバッファのエントリ数を増やし、Read/Writeのスケジューリングも改善したとしている。

Ivytownではメモリバンド幅とマルチソケット構成のスケーラビリティを改善

ハイエンドのE7では、DIMMはCPUに直結ではなく、MXBというバッファチップを経由して接続する。多くのDIMMを直結するには多数のピンが必要になってしまうので、高速シリアル伝送を使ってCPUチップのピン数を減らすこの構成は、他社のハイエンドサーバでも一般的に使われている。

IntelのMXBはDIMMチャネルを2チャネル持ち、それぞれに3枚のDIMMを接続することができるようになっている。従って、E7の場合は、8チャネルで最大24枚のDIMMが接続できる。

そして、高信頼にも配慮しており、MXBは、2チャネルのメモリに同じデータを書き込むロックステップモード(ミラーモードとも言う)をサポートしている。ロックステップモードではECCで訂正できない多ビットのエラーが発生しても、どちらかのメモリチャネルから正しいデータが得られれば、処理が誤ることはない。ただし、メモリの容量、バンド幅ともに半分になってしまう。

それほどの信頼性が要らない場合は、パフォーマンスモードで、普通に、2枚のDIMMに別々のデータを読み書きすれば良い。

E7は8チャネルのDIMMチャネルを持ち、各チャネルに3枚のDIMMを接続できる。高信頼度が必要な場合は、ロックステップモードも用意されている