世界のスーパーコンピュータとそれを動かす人々


5月 25, 2016

究極のディベート、インターコネクトのオフローディング対オンローディング

HPCwire Japan

Gilad Shainer, Mellanox

高性能コンピューティング市場は、技術遷移の真っ只中にある。『コデザイン』だ。この遷移は、マルチコアCPUと既存のCPU中心のシステムアーキテクチャにより生じた現在のインフラとアプリケーションの性能ボトルネットを解消するために登場してきた。

今日の性能のボトルネックがどうしてマルチコアCPUのせいなのか?それを理解するために、我々は、シングルコアCPUの時代に時間を遡る必要がある。当時は、性能の向上とはCPU周波数の増加とネットワーク機能のネットワークアダプタやスイッチへの移行を意味していた。技術革新は、より高速なCPUと低レイテンシのネットワークアダプタやスイッチをもたらした。そしてその組み合わせが、性能向上の大きな要因だった。しかし、それは永遠に続かなかった。 CPU周波数の向上が消費電力の制限により難しくなった。その代わり、アプリケーション・プロセスの速度を上げるために、複数のCPUコアを並列に使用するようになった。同時に複数のプロセスを実行させる為だ。アプリケーションの性能を改善し続けるためには、より速く実行することと、よりたくさん実行することが必要になった。

CPUコアの量を増加させるこの新しいパラダイムは、劇的に相互接続の負担を増加させた。その結果、システムの主要な性能指標に相互接続性能が登場した。主要な関心事は、どれくらい早く全CPUで同期が取れ、どれくらい早く全CPUからデータを集約でき、さらに分散できるかという事になった。

しかし、相互接続上の遅延はもともとCPUプロセスの通信と比べて極めて小さい。現在のInfiniBandスイッチは90ナノ秒の遅延で、InfiniBandアダプタは100ナノ秒の遅延で動作している。一方、CPUのプロセス通信フレームワークであるMPI通信では、待ち時間は数十マイクロ秒に達している。我々がさらに数十ナノ秒の遅延の削減を実現させても、プロセス通信の遅延削減に影響を与えることができない。この事は、数ナノ秒を低減させるためにCPUとネットワークアダプタをマージするという、特定の企業によって提案されたアイデアは、HPCの将来のために正しいことではないことを意味している。

これは、オフロードかそれともオンロードか、という議論に関連しているのだろうか?答えは、まさしく関連していると言う事だ。過去のオフロードとオンロードの議論は、主にCPUの効率をめぐってだった。オフロードに必要な相互接続技術の設計・構築は非常に複雑であった。しかし、CPUからネットワーク管理機能をオフロードすると、見返りとして容易に40−50%のCPUやシステムの使用率向上につながった。オンローディング相互接続技術の構築は簡単だ。それは単純なパイプ以外の何ものでもない。CPUにより、全てのネットワーク操作の管理と実行を行う。 CPUの時間の半分は、アプリケーションの立場からは無駄に使用される事となる。また、オフロードはオンロード的アプローチでは実現出来ないRDMAなどの技術を可能にする。オンローディング製品に対して、オフロードソリューションの明確かつ支配的な優位性を実証する多数のアプリケーションの性能例を見ることができる。(例えば、DDR InfiniBand対Pathscale InfiniPath、QDR InfiniBand対QLogic/Intel TrueScaleのデータである。 [i]、 [ii]および [iii]を参照されたい。)

今日では、オフロードアーキテクチャは、性能のボトルネックを克服する上で重要な要素となっている。それは、単に性能や価格性能比の問題ではなくて、インテリジェントな相互接続とオフローディングが採用されない限りシステムはスケーラビリティを獲得できないという事だ。

プロセスの数が増加し続けるので、我々は科学、研究、製造に関する複雑な問題を解決するために並列処理を促進させてきた。そのため、プロセス間通信がますます重要になってきた。その結果、pingのネットワーク遅延というレベルではなく、集団的操作やデータ集計操作といった複雑で重要な通信での遅延が課題となってきた。CPUあるいはノード上でこれらの操作の実行は既に性能限界に達しており、さらなる加速は期待できない。唯一の解決策は、クラスタ内でデータが移動中にこれらの操作を実行する事だ。つまり、それら機能がデータ移動時にスイッチやアダプタという相互接続装置により実行される事だ。『協調設計』というグローバルアーキテクチャの下で開発されたこのアプローチは、エクサスケールコンピューティングへの道を切り開くことができる。

この技術動向はHPCだけでなく、むしろデータ分析、機械学習、その他のデータインテンシブなアプリケーションとデータ検索ベースのアプリケーションの世界へ大きな影響を与える。2000年代半ばには救世主だったCPUコアの並列処理は、今日ではボトルネックになってしまった。インテリジェントなオフロード相互接続ソリューションが、新しい救世主だ。インテリジェントな相互接続ソリューションは、新たな協調プ ロセッサ群であり、スケーラブル・コンピューティングの原動力となりつつある。

基本的なアプリケーションの性能と投資のシステムへのリターンについての話に戻す。まず、EDR InfiniBandとIntel Omni-Pathの比較は、以前の異なる相互接続技術のアプローチの比較と同様であることが予想される。これまでの所、小規模な環境での計算結果だが、WIEN2K、Quantum EspressoおよびLS-DYNAについてシステムの性能の違いを見ることができる。

WIEN2kは、密度汎関数理論を用いた固体電子構造計算プログラムである。これは、相対論的効果を含む全電子方式を採用しており、既に2000以上のユーザにライセンス供与されている。Quantum Espressoは、ナノスケールでの電子構造計算や材料モデリングのためのオープンソースの統合スイートであり、密度汎関数理論、平面波および擬ポテンシャルに基づいた計算を行う。LS-DYNAは、Livermore Software Technology Corporation (LSTC)により開発された汎用マルチフィジックス・シミュレーションソフトウェアパッケージであり、明示的時間積分を用いて非線形動的遷移有限要素法によって、実世界の複雑な問題の解析が可能である。 LS-DYNAは、自動車、航空宇宙、建設、軍事、製造およびバイオ工学産業で使用されている。

20160412-F1-WIEN2K-Performance-comparison-768x426
20160412-F1-Quantum-ESPRESSO-Performance-comparison-768x425
20160412-F1-LS-DYNA-Performance-comparison-768x426

これらの3例では、EDR InfiniBandスマートネットワークの性能上の優位性を見ることができる。InfiniBandの方がシステム全体の性能で35%から63%優れている。これらの試験システムの規模は小さいが、システムサイズの増大に伴い性能差が拡大していることに留意すべきである、

さらに、LS-DYNAのケースに見られるように、InfiniBandは12ノードのOmni-Pathに対して、半分の6ノードでより高い性能を実現している。 InfiniBandはOmni-Pathに対して、半分のシステムサイズで、より高い性能を提供している。

スマートオフローディング相互接続を使用したシステムの性能の優位性は明白である。InfiniBandとOmni-Pathの場合も例外ではありえない。

参考文献
[i] http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=5613096&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D5613096
[ii] http://www.dynalook.com/european-conf-2007/ls-dyna-performance-and-scalability-in-the-multi.pdf
[iii] http://www.eetimes.com/document.asp?doc_id=1278292&page_number=2