中編はコチラ

OracleのSPARC T5

SPARC T5の設計目標は、高効率な8ソケットシステムをグルーレスで実現し、また、Oracleのワークロードやシステム製品に最適化されたプロセサを作ることである。性能の向上や電力効率を最大にし、エンタプライズ級のRASを持つということも設計目標に含まれている。

昨年のHot Chips 23で発表されたSPARC T4と比べると、SPARC T5プロセサは使用する半導体プロセスを28nmに微細化し、搭載するS3プロセサコア数を倍増して16個、L3キャッシュも4MBから8MBに倍層している。また、DDR3メモリインタフェースも4チャネルから8チャネルと倍増しし、×8の2ポートPCI ExpressはGen2からGen3になりバンド幅を倍増している。

SPARC T5プロセサは16コアと8MBのL3キャッシュを持ち、3.6GHzのクロックで動作する(この記事の図は特に断りがないものは、Hot Chips 24における富士通の発表資料とOracleの発表資料の抜粋)

SPARC T4で開発されたS3コアは28nm半導体プロセスにシュリンクされ3.6GHzで動作するようになったが、SPARC T5でも整数演算の場合は16段パイプラインで最大8スレッドのマルチスレッドをサポートする点は同じである。また、各コアは16KB I+16KB Dの4Way L1キャッシュと128KB 8WayのL2$を持つ点も変わっていない。なお、SPARC T5のチップサイズや消費電力は発表されなかった。

そして、SPARC T5は8本のプロセサ間リンクを持ち、8ソケットのプロセサを直結することができる構成となっており、SPARC T4が最大4ソケットであったのに対して、これも倍増となっている。このプロセサ間のリンクは15Gb/s×14レーンと書かれている。その内の1レーンはフェイルオーバ用のスペアである。バンド幅は28GB/sと述べられ、片方向14GB/s程度である。そうすると、スペア以外の13レーンの内、データは8レーンで伝送し、残りはエラーチェックや制御ビットなどに使われていると思われる。

8ソケットのチップの接続は完全結合であり、どのチップにも1ホップで到達できる。また、チップ数が少ない場合は、チップ間を複数のリンクで接続しチップ間のバンド幅を増やすこともできるようになっている。

SPARC T5は8ソケットまで完全結合ができ、1ホップで到達できる

SPARC T5は、DVFS(Dynamic Voltage Frequency Scaling)を採用しており、全体の仕事量が少なく、一番ビジーなコアでもクロックを下げられる状態になると、チップ全体のクロックを下げ、それに応じて電源電圧も下げる。消費電力はC×V2×fに比例するので、fを下げ、Vを下げることで大幅に電力を減らすことができる。

しかし、一番ビジーなコアに合わせているので、より仕事が少ないコアでは余計な電力を喰ってしまう。これに対応するため、T5では「Per core pair cycle skipping」という手法を取り入れている。この手法は、2コアのペアを単位としてクロックを間引く。Vはビジーなコアと同じであるのでDVFSほどの削減にはならないが、間引いたクロックの分だけ電力を減らせる。

SPARC T5コアの電力制御

さらに、プロセサ間の高速リンクもリンクの使用率をモニタして、必要最小限のリンクだけを動作させる。ただし、この手法が使えるのは、チップ間に複数本のリンクがある場合に限られるが、4リンクを並列に使用する場合、このように負荷に応じてダイナミックに使用するリンク数を変えることにより、典型的には。25W程度消費電力を減らせるという。

プロセサチップ間に4本のリンクがある場合、ダイナミックに必要な本数のリンクだけを動作させる

また、メモリとのインタフェースにもLight sleepするL0sステートとPLLだけを残して電源をオフするL1モードを持ち、メモリへのアクセスが無い期間のメモリインタフェースの消費電力を減らしている。

SPARC T5のPCI ExpressはGen3となり、Gen2であったT4に比べてバンド幅を倍増し、PCI Expressのパワーマネジメントもサポートしている。また、OracleのSolaris VMを使うSR-IOV(Single Root-IO Virtualization)によるIO仮想化を加速できる機能追加を行っている。

SPARC T5のPCIeサブシステム

富士通とOracleのSPARCプロセサの比較

Sun MicrosystemsのTシリーズプロセサは当初は多数の小規模コアを1チップに集積し、多数のスレッドを切り替えることで空きサイクルを減らして高いスループットを実現するという思想であった。これに対して、富士通のSPARC64プロセサはシングルスレッド性能を重視する伝統的なプロセサである。この2つのプロセサは補完的であり、Sun(現在はOracle)と富士通はTシリーズサーバとMシリーズサーバという2系列の製品を相互供給して販売してきた。

しかし、Oracleは、SPARC T4からコアをOut-of-Order実行に変え、クロックも上げてシングルスレッド性能も重視するという方針に転換した。次の表に、Hot Chips 24で発表された富士通のSPARC64 XとOracleのSPARC T5プロセサの比較を示す。

SPARC64 X SPARC T5
半導体プロセス 28nm 28nm
コアクロック 3.0GHz 3.6GHz
コア数 16 16
スレッド/コア 2 8
最終レベルキャッシュ 24MB L2 8MB L3
チップサイズ 23.5mm×25mm ?
クロックゲート DVFS、クロックゲート、クロックスキップ
消費電力 ? ?
メモリバンド幅 102GB/s(Stream 65.6GB/s) 128GB/s(Stream 80GB/s)
CPUバンド幅 14.5GB/s 14GB/s×並列数
PCI Express Gen3 ×8 2ch Gen3 ×8 2ch
最大Socket構成 4(外部チップで64) 8

両者ともに28nmプロセスを使うOut-of-Order実行の16コアチップであり、 PCI ExpressのIOバンド幅もほぼ同じである。SPARC64 Xはクロックやメモリバンド幅ではSPARC T5より低いが最終レベルキャッシュは24MBとT5の3倍の容量があり、性能的にも大きな差は無いのではないかと推測される。

高信頼サーバ用のRAS機能や10進浮動小数点演算サポートなどではSPARC64 Xが優れており、一方、並列スレッド数や電力制御の機能、8ソケット直結などの点ではSPARC T5が優れている。このような違いはあるが、当初のようにシングルスレッド性能重視とマルチスレッドのスループット重視という大きく性格の異なるプロセサで棲み分けるというやり方が成り立たなくなってきていると思われる。

そうなるとOracleは富士通のプロセサを必要とするかという話になりかねない。IntelのXeonが性能、信頼度の点でハイエンドサーバの領域をカバーできるレベルに迫ってきており、SPARCサーバの市場は圧迫されている。その状況で、Oracleを失う事態になれば、富士通のプロセサ開発は厳しい状況になることが懸念される。丸山氏が発表の最後で、「富士通はSPARC64プロセサの開発の継続をコミットする」と述べたのは、勘ぐれば、そう言わざるを得ない状況ということであろうか?

■Hot Chips 24関連記事
【レポート】Hot Chips 24 - Intelの0.5V動作実験チップ「Claremont」 (2012年10月12日)
【レポート】Hot Chips 24 - 次世代コアを並べて発表し、存在感を示したAMD(4) (2012年9月27日)
【レポート】Hot Chips 24 - 次世代コアを並べて発表し、存在感を示したAMD(3) (2012年9月26日)
【レポート】Hot Chips 24 - 次世代コアを並べて発表し、存在感を示したAMD(2) (2012年9月25日)
【レポート】Hot Chips 24 - 次世代コアを並べて発表し、存在感を示したAMD(1) (2012年9月24日)
【レポート】Hot Chips 24 - 学会初登場のIntelのメニーコア「Xeon Phi」(後編) (2012年9月19日)
【レポート】Hot Chips 24 - 学会初登場のIntelのメニーコア「Xeon Phi」(前編) (2012年9月18日)
【レポート】Hot Chips 24 - 乾いたタオルを絞るIvy Bridgeの省電力技術 (2012年9月7日)
【レポート】先端プロセサの発表が盛りだくさん - Hot Chips 24が開幕 (2012年8月28日)