Oakforest-PACSとReedbushのレベル2/3測定
Joint Center for Advanced High Performance Computing(JCAHPC)はOakforest-PACSスパコンを擁する東大と筑波大の共同運営センターである。また、本郷(浅野キャンパス)の東大情報基盤センターにはReedbushというスパコンが設置されている。
12/20更新:初掲載時に、誤ってReedbushの設置場所をOakforest-PACSスパコンと同じ、東大柏キャンパスとしておりましたが、正しくは本郷の浅野キャンパスとなりますので、修正させていただきました。お詫びして訂正いたします。
JCAHPCに設置されているOakforest-PACSは8208個のXeon Phi(Knights Landing)を使うスパコンで、25PFlopsのピーク演算性能を持っている。
Oakforest-PACSの計算ノードは富士通製のPrimergy CX1640 M1サーバで、1個の水冷のXeon Phi 7250からなる。そして、この計算ノード8個を2Uのシャシーに収容している。そして、1ラックには15シャシーを収容するので、合計120計算ノード収容である。システム全体では8,208ノードであるので、計算ノードだけで69ラックが必要となるが、実際にはスイッチやストレージなどもあるので、全体では102ラックのシステムとなっている。
消費電力は空調込みで4.24MW、空調を除くと3.44MWとなっている。
また、Reedbushは本郷(浅野キャンパス)に設置されている東大の情報基盤センターのスパコンで、JCAPHCの管轄ではない。Oakforest-PACSは富士通製であるが、こちらはHPE(旧SGI)製である。
Reedbush-U、Reedbush-HとReedbush-Lという3つのシステムがある。Reedbush-UはXeon E5-2695 v4×2の計算ノードを使い、このノードを420ノード持つシステムである。Reedbush-HはXeon E5-2695 v4×2に2個のNVIDIA P100 GPUを加えた計算ノード120ノードからなるシステムである。Reedbush-LはReedbush-Hの計算ノードのP100 GPUを4個とした計算ノード64ノードからなるシステムである。
システムの発注に際して、全システムの電力消費を、リアルタイムにモニタし記録できることという条件を付けた。そして、Oakforest-PACSはレベル2、Reedbushはレベル3の測定を行うこととし、実際の電力測定は、Oakforest-PACSは富士通、ReedbushはHPEに実行してもらった。
Oakforest-PACSの電力の測定は、640ノードを1つの分電盤でカバーし、4台の分電盤で2640ノードの消費電力を測定している。これは8208ノードの1/8以上というレベル2測定のルールを満たしている。
次の図はOakforest-PACSの消費電力の推移をプロットしたもので、データ測定は1秒ごとに行っている。コアフェーズの平均電力は2719kwで、HPL性能は13.55PFlopsであり、4.98GFlops/Wのエネルギー効率となっている。
Reedbush全体では12の分電盤から電力が供給されているが、Reedbush-Hの場合は、次の図の赤い破線で囲んだように、Reedbush-Hに関係する部分だけを抜き出して測定している。
次の左の図はReedbush-Hの消費電力の測定結果、右の図はReedbush-Lの消費電力の測定結果である。
左の図の長い方の期間はHPLの全部の実行期間で、狭い方が電力を測定するコアフェーズである。2つのグラフは青い線が計算ノードの電力で、赤い線が全体の電力で、差分がサブシステムの電力である。なお、サブシステムの電力は、全期間、8kWで一定である。
Reedbush-Hのコアフェーズは292秒で、平均消費電力は93.6kW、HPL性能は802.4TFlopsとなっており、性能/電力は8.57GFlops/Wとなっている。
一方、Reedbush-Lのコアフェーズは323秒、平均消費電力は79.24kWで、性能/電力は10.167GFlops/Wとなっている。なお、青線のマネジメント系の電力は10kW一定である。
富士通からのコメントは、小規模なグループに分けてHPLを動作させ、性能をチェックして性能の低いものを除くことが重要。そして、Oakforest-PACSでのHPL実行は14時間かかるので、素早くリカバリできるサポートシステムを用意して必要がある。
電力をモニタすることで、電力が突然変化すると、どこかで故障が起きたことが分かる。問題の早期発見に役立つとのことである。
HPEからのコメントは、電力計の数を減らすように構成を考えることが重要。また、分電盤の負荷をバランスさせることが重要。そして、性能の低いコンポーネントをスクリーニングすることが重要というものである。ハードウェアのスクリーニングが重要というコメントは富士通のコメントと共通している。
HPLのパラメタチューニングは、ハードウェアの設定、ドライバ、MPIのパラメタにも依存するので、非常に複雑である。最適なパラメータを調べるのに30時間かかった。一方、120ノードの測定そのものは10分でできる。
EDR InfiniBandスイッチなどReedbush-UとReedbush-Hで共用されているサブシステムが多数ある。共用されている部分の消費電力は分離して測定する必要があるが、これが面倒であるという。
JCAHPCと東大の情報基盤センターがレベル2/3の測定を行うことにしたのは、その方が、より現実的なシステムの能力を測ることができるからである。レベル1の測定は、インタコネクトの電力は推定値でも良く、サブシステムの電力は含めなくてもよい。このため、レベル1測定の値は、レベル2やレベル3測定よりも良い値が出ることが多い。
JCAHPCと東大の情報基盤センターは、できるだけ現実の問題の場合と同じ条件でシステムを評価したいと考えている。
Green500に対するコメントは、(1)Top500のPerf/WではReedbush-Lは10位であるが、Green500では11位になっているのは何故か?、(2)Green500には電力最適化した場合の性能を出すことが認められているが、電力最適化した測定かどうかはxlsファイルを見ないとわからない。Reedbush-Lで電力最適化した場合は10.7GFlops/Wとなり、今回のリストでは8位となる。(3)今回のリストのTop10の中でレベル2/3の測定を行っているのは2システムだけである。しかし、これもxlsファイルを見ないと分からず、あまり知られていないといったものとなっている。
なお、今回のGreen500リストでは、NVIDIAのDGX Saturn V Volta、東工大のTSUBAME3.0、CSCSのPiz Daintが電力最適化した測定を行っていると書かれている。また、Top10でレベル2/3の測定を行っているのは4位のDGX Saturn V Voltaと10位のPiz Daintだけである。