スパコン性能をFlops/Wで評価するGreen500の2020年6月版において、Preferred Networksの「MN-3スパコン」が世界一を獲得した。

例年はGreen500 1位を獲得した記念の賞状授与や、30分程度の授賞プレゼンテーションが行われるのだが、今回はデジタル開催であったこともあり、それらは行われず、Top500、Green500などの発表はあっさりしたものであった。

次の表はGreen500の10位までのデータより必要部分を抜き出したもの。表の後半にあるRmaxがHPLの実行Flops値、POWERはHPL実行時の消費電力で、Power Efficiencyが電力効率である。

  • Green500

    2020年6月版Green500の上位10システムのシステム諸元 (出所:Green500 Webサイト)

Green500の1位は日本のPreferred NetworksのMN-3という名前のシステムである。2位はNVIDIAのA100 GPUを使うSelene、3位は日本のPEZYのNA-1システムである。さらに4位は、前回のGreen500でトップとなった富岳のプロトタイプ「A64FX Prototype」である。そして富岳も9位に入っており、Top10の半分の5システムが日本のスパコンである。

ただし、Top500の順位では2位のSeleneは7位であるが、MN-3やNA-1は400位前後と比較的小規模なシステムである。小規模なシステムの方が通信が少なく電力効率を高くしやすいことを考えると、Top500でも10位までに入っているシステムは大したものである。

Preferred Networksは自社でのAI開発のために、自社でマシンラーニング用のスパコンを開発して使用しており、NVIDIAのP100 GPUを使ったMN-1、V100 GPUを使ったMN-1b、V100 x8台の計算ノードを128台使う大型のMN-2を開発し、今回のMN-3ではNVIDIA GPUではなく、MN-CoreというLSIを自社開発して使っている。

次の写真にみられるように、4個のMN-Coreチップを1つのパッケージに搭載している。

MN-Coreの消費電力は推定で500Wと書かれているが、これは1チップの電力ではなく、4チップ合計のパッケージの消費電力のようである。計算は倍精度(FP64)、単精度(FP32)、半精度(FP16)で行うことができ、4チップ搭載のFP64での演算性能は32.8TFlops、FP32では131TFlops、FP16では524TFlopsとなっている。データ長が半分になると、演算器の個数が2倍になり、動作速度が2倍になっているという感じである。

  • MN-Core

    MN-Coreは4個のチップを1つのパッケージに収容している (このレポートの図の出典:Preferred NetworksのWebサイト)

次の図のように、4個のPEと1個のMAUがMABlockを構成する。そして、16個のMABとL1 BlockメモリがL1Bとなり、8個のL1BとメモリでL2Bを構成する。そしてMN-Coreチップには4個のL2Bとチップ間の接続インタフェースなどが集積されている。

4個のPEはMAUにデータの供給などを行う。また、PEは、ディープラーニングで頻繁に使用する命令の実行も行っている。MAUブロックは4×4のマトリクスに長さ4のベクトルを掛けて、長さ4のベクトルに足し込むという計算を1サイクルごとに実行できる。

この行列演算は16積和演算(1積和演算は積と和の計算があるので2Flops)で、4チップで32K積和演算となる。推測であるが、MN-CoreチップのMAUは1GHz程度のクロックで、2サイクルに1回の積和演算を行うような構成ではないかと思われる。

  • MN-Coreのアーキテクチャ

    4個のPEと1個のMAUがMABlockを構成する。そして、16個のMABとL1 BlockメモリがL1Bとなり、8個のL1BとメモリでL2Bを構成する。そしてMN-Coreチップには4個のL2Bとチップ間の接続インタフェースなどが集積されている

そして、この階層間のデータの移動と並行してスキャッタ/ギャザー、ブロードキャスト、リダクションなどが同時に実行できる造りになっているとのことである。

MN-3の演算能力は非常に大きいのだが、大規模な学習処理を行う場合にはSSDからのデータ供給速度が間に合わない。このため、各ノードに3TBのOptane DC Persistent Memoryを搭載している。Optane DC Persistent Memoryは不揮発性の高速メモリで、速度はDRAMには若干及ばないが、通常のフラッシュよりはずっと高速で、書き換え寿命も長い。このため、MN-3の性能向上に寄与していると考えられる、

MN-CoreはTSMCの12nmプロセスを使っているとのことだが、MN-Coreのチップサイズやトランジスタ数などは公表していない。

そして、このMN-Coreを4個搭載したMN-Coreボードが次の写真で、形状はPCI Express3.0 ×16ボードで、推定の消費電力は600Wとなっている。しかし、電力密度はそれほど高くは無いので、水冷ではなく、強力なブロアで冷却している。

  • MN-Coreボード

    4個のMN-Coreを搭載する空冷のMN-Coreボード

さらに4枚のMN-Coreボードを7U筐体に収容してMN-Coreサーバを作っている。そして、4枚のMN-Coreボードを7Uの筐体に収容している。今回はMN-3aで、12本の筐体にMN-Coreサーバを4台ずつ搭載する構成を採用している。全体では48ノードであるが、Green500で1位となったシステムは40ノードの状態で測定を行っているという。

  • MN-3aクラスター

    MN-3aクラスター

なお、MN-2ならびにMN-3システムは2002年6月にTop500の1位を獲得した「地球シミュレータ」を入れるために作られた海洋開発研究機構(JAMSTEC)のコンピュータルームに設置されている。今回のシステムは1.5Zoneの規模であるが、4Zoneまで拡張できるようにラックだけは組んであるとのことで、今後、需要に合わせて規模を拡大する予定だという。