TOP500 は時代遅れ? 代替ベンチマークとしてHPCG に注目!

スーパーコンピューターのランキングとして有名な TOP500 ですが、もう時代遅れなのでは?と何年も前から言われています。

最近では、より複雑な処理を行う HPCG というベンチマークが注目されています。

参考【TOP500】スパコンランキングの見方!【Graph500_Green500】

TOP500 の NEWS 欄には、毎週スーパーコンピューターに関する最新情報が報告されています。残念ながら、日本のメディアではほとんど報道されません。
本ウェブサイトでは、それらのニュースを定期的に日本語で紹介していきます。

今回紹介する記事は、
“TOP500 Meanderings: HPCG Gains Steam as Alternative Benchmark for Supercomputers”
March 14, 2018

概要

この分野でわずか3年後には、HPCG(High Performance Gradients)ベンチマークが、スーパーコンピューターにとって実行可能な第一の新しい指標としなるかもしれません。 昨年 11 月に発表された最新の HPCG には、16 カ国から 115 のスーパーコンピュータがエントリーしました。

スーパーコンピューター分野では、High Performance Linpack (HPL) が過去四半世紀の HPC システムの事実上のベンチマークでした。 線形方程式の処理速度に基づいて、HPL は 25 年もの間スーパーコンピュータ性能をランク付けするために TOP 500 で使用されてきました。また、新しく設置された HPC の burn-in test としてもよく使用されています。

ただし、HPL は科学や工学のアプリケーションが特定のマシンでどれほどうまくいくかを示す相対的な指標に過ぎません。 あなたのアプリケーションがとても長い時間を費やして浮動小数点数の密行列を乗算するのでない限り、Linpack の結果に近いパフォーマンスを得ることはまずありません。

Jack Dongarra と Piotr Luszczek と共に、HPCG を開発した Mike Heroux 氏は、2014 年にエントリーの受付を開始して以来、HPCG を支持してきました。Sandia National Laboratoriesの最近のニュースリリースでは、ベンチマークの注目すべき新たな発見にスポットライトを当てています。Herox は HPCG の使用を促す目的もあり、HPC アプリケーションのプロファイルの変化を指摘しました。

「Linpackプログラムは、実行が必要な広範なコア計算を表現するのに使われたんやが、状況は変わっていまんねんわ」と Heroux 氏は述べました。 「Linpackプログラムは、密集したデータ構造に対して計算アルゴリズムを実行して、スーパーコンピュータの理論上の最大速度を識別しまんねん。 一方、現代のアプリケーションでは、疎なデータ構造 (sparse data structure) を使用することがようけ、計算がより希薄や。」

これら Heroux が話しているのは、商業的な大規模データアプリケーションのことだけではなく、より多くのデータ要求する従来の HPC コードも含まれます。 彼は、流体フローシミュレーションの圧力差のモデリングの例を示し、密行列計算の実装を選択することはメモリと計算の両方の観点からよくないと述べた。 もちろん、機械学習、財務分析、詐欺検出などの、より典型的な大型データアプリケーションは、ランダムデータアクセスにも大きく依存しています。

このような経緯から、HPCG はこれらの新しいアプリケーションに対応する HPL の代替指標として考案されました。 これを達成するために、ベンチマークでは、preconditioned conjugate gradient algorithm、global collective operations、sparse data structures が使用されています。 Heroux が示唆したように、HPL がやっていないこと、すなわちメモリサブシステムに重点を置くことをするためには、後者が重要です。

ほとんどのシステムやスーパーコンピュータなどでは、計算パフォーマンスよりもメモリパフォーマンスがはるかに制限されているため、ますます重要になっています。 マルチコア設計では、プロセッサのパフォーマンスを向上させるのは比較的簡単でしたが、それらのコアを適切に供給するためにメモリサブシステムを構築することはずっと困難でした。 そのため、計算速度に壁があるのではなく、メモリに壁があるのです。

結果として、これらの大型スーパーコンピューターシステムの HPCG での実行速度は、HPL の結果と比較してはるかに劣ります。 典型的なスーパーコンピュータは通常、HPL では本来持っているピーク性能の 50〜90% 程度を示しますが、HPCG では数パーセント程度の性能しか示せません。 実際に、Linpack で PFLOPS 以上を達成したシステムは 181 台ありますが、HPCG で PFLOPS を達成したシステムはありません。 ビッグデータの処理に関しては、私たちはまだ TFLOPS スケールの時代です。

現時点での HPCG のトップは理研の K コンピュータで、ベンチマークで 602.7 TFLOPSを達成しました。これは、システムのピーク性能の 5.4% に相当します。 その割合は低いように見えるかもしれませんが、HPCG のランキング内では良い方です。 実際、NEC のベクトルマシンの高速メモリだけが、HPCG のベンチマークでピーク性能の 10% を平均して出すことができています。 これらとは対照的に、TOP500 第一位の Sunway TaihuLight は 480.8 TFLOPS(ピーク性能の 0.5%)しか性能を出せていません。 次の表は、2017 年 11 月現在の Linpack 番号(Rmax)とともに、上位10個の HPCG システムを示しています。

HPCG のリストに載っている 115 のシステムのうち、TOP500 で上位に入っているのは半分しかいません。 それにもかかわらず、これらのシステムは、米国、日本、中国が特に顕著な主要スーパーコンピューターを所有していることを示しています。これらのマシンのほとんどは、政府支援のスーパーコンピューティングセンターや大学に設置されていますが、リストには商用機もいくつか散在しています。 これには、ドイツの無名の IT サービスプロバイダー向けのシステムであるAquarius と、オイル&ガス探査と生産をサポートする 2 つの HPC システムである Pangea(TOTAL, France)と HPC2(Eni, Italy)が含まれます。 システム番号115は、国際宇宙ステーションに配備された HPE’s Spaceborne Computer です。

HPC のベンダーやユーザーは、現在メモリの壁を拡張することに精力的に取り組んでいるので、HPCG はこれらのシステムのアーキテクチャ上の課題に焦点を当てるだけの有用な指標かもしれません。 確かに、ビッグデータを扱うアプリケーションの使用が増加してきていますので、そのようなより高性能なメモリー構造をもつコンピューターに対する需要を生み出しています。HPL が処理速度重視のスーパーコンピューターの競争環境を作り上げたように、HPCG がビッグデータの時代にも同じ役割を担う可能性があります。

感想

HPCG に関しては、ランキングの順位にしか注目したことがなく、処理速度について注目したことがなかったのですが、まだ TFLOPS の段階なんですね。意外でした。

確かに、de novo genome assembly をやっている人などもテラバイトのメモリーを使うって言っていましたし、ビッグデータの処理でメモリがネックになっているのは理解できます。

HPCG がもっとメジャーになればメモリ重視のスーパーコンピューターが開発されるのですかね?でも、その前にエクサスケールコンピューターの開発の方に予算が大きく割り振られそうな気もしています。

記事中に間違い等ある場合は、コメント欄、twitter またはメールにてお知らせいただけると幸いです。

関連する記事

コメントを残す(投稿者名のみ必須)