図7に示すように、初代地球シミュレータ(Earth Simulator 1:ES1)は64GFlopsの計算ノードにバンド幅256GB/sのメモリが接続され、ノード間を接続するクロスバへのバンド幅は12.8GB/sであった。これに対して理想TSUBAME2.0は515GFlopsの計算ノードに150GB/sのバンド幅のメモリが付き、8GB/sのインタコネクトでノード間を接続している。

図7 理想TSUBAME2.0と地球シミュレータの比較

ということで、理想TSUBAME2.0の計算ノードあたりのメモリバンド幅とインタコネクトバンド幅はES1の2/3程度となっている。従って、メモリバンド幅やインタコネクトバンド幅が制約になる問題に対してはES1の計算ノードの2/3程度の性能が期待できる。システム全体のメモリバンド幅はES1の160TB/sに対して理想TSUBAME2.0は720TB/sであり、メモリバンド幅リミットの問題に対してもシステム全体では4~5倍の性能が期待される。

一方、図8に示すように京システム(National Leadership Project:NLP)の計算ノードと比較すると、NLPノードは128GFlopsの演算、64GB/sのメモリバンド幅、5GB/sのインタコネクトの4本同時動作で計20GB/sのノード間通信バンド幅に対して、理想TSUBAME2.0は500+GFlopsの演算性能、150GB/sのメモリバンド幅、8GB/sのインタコネクトバンド幅である。NLPノードはピーク計算性能に比べてメモリバンド幅、インタコネクトバンド幅が充実しているが、TSUBAME2.0の計算ノードはピーク演算性能では4倍、メモリバンド幅では2倍強であり、まあ、計算ノードあたりでは全体的に良い勝負の性能と考えられる。

図8 理想TSUBAME2.0と京システムとの比較

図9に理想TSUBAME2.0とES1、NLPのインタコネクト(ネットワーク)の比較を示す。ES1は各計算ノードから中央のクロスバスイッチに直接接続する構造であり、システムを2分する面を通過できる情報量であるBisectionバンド幅は約8TB/sであった。これに対して、理想TSUBAME2.0では2段のスイッチを通過するファットツリー構成で約60TB/s、のBisectionバンド幅である。NLPはトーラス接続であり、隣接ノード以外に対してはバケツリレー的にデータ繰り返す。現状では詳細な内容が公開されていないので推測であるが、ファットツリーよりレイテンシが長いのではないかと考えられる。また、Bisectionバンド幅は、約30TB/s(推定)としている。

図9 理想TSUBAME2.0と地球シミュレータ、NLPのインタコネクトの比較

そして、図10に示すまとめとしては、ES1に対して理想TSUBAME2.0はノードごとのメモリ、インタコネクトバンド幅は同程度であり、システム全体のバンド幅は6倍程度となり、流体解析などのバンド幅リミットの問題は地球シミュレータと同等にスケールするはずである。バンド幅リミットでない問題はピーク演算性能の高いTSUBAME2.0の方が圧倒的に速い。

図10 理想TSUBAME2.0と地球シミュレータ、NLPの比較のまとめ

京システム(NLP)に対しては、メモリバンド幅とピークFlopsの比であるByte/Flopsはほぼ同じで、インタコネクトバンド幅はNLPが2倍だが、Bisectionバンド幅では理想TSUBAME2.0の方が約2倍(?)ということで、大部分のアプリは両システムで、ほぼ同様にスケールすると考えられる。並列度がそのまま生きるWeak Scalingの問題ではピーク性能の点でNLPが4倍の性能というのがまとめである。ただし、値段や設置スペース、消費電力には4倍を大きく上回る差がある。また、GPUは超マルチスレッドでインタコネクトのレイテンシを隠ぺいする効果があるが、NLPでは並列スレッド数が少なく、通信レイテンシを隠ぺいするには、そのようにプログラムを書く必要がある点が懸念されるという見解であった。

ただし、上記の比較は当初、松岡先生が構想した理想TSUBAME2.0に対するもので、その実現にはコストなどの障害があり、このままでは実現されていない。まず、メーカー各社に理想TSUBMAE2.0の仕様のシステムが作れるかを問い合わせると、計算ノードのサイズは5U程度と大きく、値段も1000万円を上回るということで、値段、設置スペース、消費電力などの点でTSUBAME2.0の要件には合致しなかった。

メーカーとの検討を続け、結果としてHPが高さ2Uで半幅のサイズにWestmere-EP 2チップと3台のM2050 GPUを搭載し、QDR InfiniBandのインタフェースを2つ搭載するサーバを開発することになった。その結果、上記の理想と比較すると、コストやサイズの制約から、M2050 GPUをベースに考えると1ノードのピーク演算性能とメモリバンド幅は理想のままであるが、CPU資源は2/3、インタコネクトバンド幅は1/3に減少したことになる。従って、現実のTSUBAME2.0システムに対しては、前記の比較はこれらの点を補正して解釈する必要がある。なお、GPUを1個減らし、その替りにQDR InfiniBandのアダプタを搭載することも可能であり、その方が理想TSUBAME2.0のバランスに近いが、現状では、ピーク演算性能を優先し3GPUのノード構成にしているという。

そして、ここで述べた諸点を総合して考えると、GPUはかつての計算専用のアクセラレータではなく、CUDAなどの出現によりソフトウェアの世代間継承性も問題が無くなりつつある。また、特殊な計算だけをアクセラレートするものではなく、広い範囲の計算に適用できるようになってきている。そして、プログラミング環境も改善されてきており、GPUは単なるアクセラレータではなくポストペタスケールのシステム実現の本質的な要素であるというのが、松岡先生の結論である。