富士通の次期スパコン

富士通は、昨年8月のHot Chipsで発表したSPARC64 VIIIfx CPUを使用するシステムボードと筺体をSC09で展示していた。

富士通の次期スパコンのシステムボード(左)と筺体(右)

システムボードには4個の水冷のSPARC64 VIIIfxチップが搭載され、その両側にCPUあたり8枚のDIMMが搭載されている。そして、ボードの左端に水冷の4個のスイッチチップが搭載されている。富士通のシステム筺体には、このシステムボードが上下に12枚ずつ搭載され、中央部分には電源やIO接続などの部分が搭載される。

富士通のSPARC64 VIIIfxプロセサもPOWER7と同様に45nmプロセスで作られ、8コアを搭載している。そして各コアに4つの積和演算器を搭載し、倍精度浮動小数点演算をサイクルあたり8演算できるという点も同じである。チップ面積は513mm2とPOWER7と比較すると10%あまり小さいが、最終レベルキャッシュが5MBと、POWER7の32MBと比べて小さいので、単純な比較はできない。

Hot Chips 21で発表されたSPARC64 VIIIfxのチップ写真と概要説明

SPARC64 VIIIfxとPOWER7で大きく考え方が異なるのは、消費電力である。POWER7は性能優先で4GHzのクロックで200Wと高消費電力であるのに対して、SPARC64 VIIIfxは消費電力の低減を優先してクロックは半分の2GHzとして、消費電力を58Wに抑えている。その結果、POWER7はチップあたり200Wで256GFlopsであるが、富士通は58Wで128GFlopsであり、富士通の方が約1.7倍、電力効率が良い。

富士通のシステムボードは4計算ノードを搭載しピーク演算性能は512GFlopsであり、筺体では12TFlopsとなる。一方、BlueWatersは12CECを1筺体に搭載し、筺体あたり96TFlopsである。IBMシステムの筺体は富士通の筺体の2倍程度の底面積があると思われるが、それでも床面積あたりの演算性能は、富士通システムの4倍程度の高密度となっている。

富士通の次期スパコンでLinpack 10PFlopsにするには、Linpack/ピーク比をSPARC64 VIIを使う宇宙航空研究開発機構(JAXA)のシステムと同じ91.2%と想定すると、890筺体を必要とするという計算となる。一方、IBMシステムでは、効率80%としてもLinpack 10PFlopsを130筺体あまりで実現できる。ピーク10PFlopsのBlueWatersであれば100筺体程度で実現でき、設置面積的には大きな差がある。

イリノイ大学はBlueWatersを設置するために、新たに計算センターを建設しているので問題ないが、重量3トンという筺体は、通常のエレベータには搭載できない。また、通常の19インチラックより底面積が大きいとは言え、3トンの床荷重に耐える設計になっている計算センターは多くないと思われるので、既存のスパコンセンターに設置するには難があるのではないかと思われる。一方、富士通のシステムの方は、通常の人間用のエレベータに載せて設置できると思われる。

建設中のイリノイ大学のぺタスケール計算センター(出典:BlueWatersプロジェクトWebサイト)

また、富士通次期スパコンで水冷しているのはCPUとスイッチチップだけであり、メモリDIMMや電源などは空冷である。その分の熱は計算機室に排出され、空調で冷却する必要があると考えられる。前述のようにCPUのエネルギー効率は富士通が1.7倍良いのであるが、空気に拡散した熱を空調で取り除くのは効率が悪く、冷却なども含めたシステム全体でのGFlops/Wでの比較がどうなるのか興味深いところである。

建設中の理研の次世代スーパコンピュータセンター。中央奥が計算機棟。左側手前の白い建物は熱源機械棟、右側手前は特高受電設備(出典:理研次世代スーパーコンピュータ開発実施本部Webサイト)

IBMのインタコネクトは、最大512個のスーパーノード間を直接接続する構成であり、全てのCPUが最大4段のスイッチLSI経由で接続されるが、富士通のシステムはTOFUと呼ぶ6次元のメッシュ/トーラスで接続される。

富士通の6次元トーラス/メッシュインタコネクトの展示模型(透明な球体の中に12個の計算ノードを表す12個の小球が入っている)

12個の計算ノードを単位として、これを2×3×2の3次元直方体になるように接続し、この12ノードのグループを単位としてXYZの3次元の直方体になるように接続している。この3次元のXYZ接続は、CrayのXT5/6などと同様の接続トポロジである。

このメッシュ/トーラス接続には、各スイッチLSIからは10本の腕を出すだけで良く、各次元のノード接続数を増やすことによりシステムのサイズを大きくすることができ、拡張性が高い。しかし、IBMシステムと比較すると、富士通システムでは離れた計算ノードに行くには途中の計算ノードのスイッチLSIを順次経由して行く必要があり、BlueWatersと比較すると通信レイテンシは長くなると考えられる。

富士通のインタコネクトは物理的には6次元であるので、故障ノードが発生してもローカルのabc軸を使って迂回することにより、ユーザビューとしては3次元トーラスを提供することができる。つまり、故障ノードがあっても3次元トーラスとして運用を継続することができるようになっている。数万ノードという大規模システムでは、パラパラと故障ノードが出るのは避けられないので、それを回避してシステムとしては動作を続けられるということのは非常に重要である。

また、IBM、富士通のシステムともに、CPUチップは宇宙線などによるソフトエラーを検出して訂正する機能を持ち、誤動作の確率を大きく低減している。また、両者ともに水冷を採用しているが、これは高発熱を効率よく冷却するためだけではない。空冷の場合は、チップ温度は80℃~100℃程度になるが、水冷の場合はこれを50℃程度下げることができる。半導体の故障率はチップ温度に大きく依存するので、この50℃の差は、チップの故障率を2桁以上低減している筈である。このように10PFlops級のスパコンは単にPCクラスタの規模を大きくしただけではなく、可用性や信頼性を大きく改善した構成になっている。