前回の記事でお伝えしましたように、2015年7月13日にスーパーコンピュータの性能ランキングTOP500が発表されました。そこで、今回はスーパーコンピュータのランキングについてお伝えしようと思います。ちなみに、前回紹介したGreen500はまだ発表されておりません。
では、早速、2015年上半期のスーパーコンピュータの10位までのランキングを見て行きましょう!
表1 2015年上半期のTOP500(TOP500, http://www.top500.org )
順位 |
スーパー コンピュータ |
国 |
理論最大性能 (ペタフロップス※1) |
実際の最大性能 (ペタフロップス) |
1 |
天河2号 |
中国 |
54.902 |
33.863 |
2 |
Titan |
アメリカ |
27.113 |
17.590 |
3 |
Sequoia |
アメリカ |
20.133 |
17.173 |
4 |
京 |
日本 |
11.280 |
10.510 |
5 |
Mira |
アメリカ |
10.066 |
8.587 |
6 |
Piz Daint |
スイス |
7.789 |
6.271 |
7 |
Shaheen II |
サウジアラビア |
7.235 |
5.537 |
8 |
Stampede |
アメリカ |
8.520 |
5.168 |
9 |
JUQUEEN |
ドイツ |
5.872 |
5.009 |
10 |
Vulcan |
アメリカ |
5.033 |
4.293 |
表1はTOP500の1位から10位までスーパーコンピュータです。前回の記事で予想した通り、天河2号が今回も1位となりました。日本の京も前回と変わらず4位です。予想していなかったのは,サウジアラビアのShaheen IIが初登場で7位にランクインしたことです。
日本のスーパーコンピュータは500台中39台がランキングされました。その多くは研究所や大学機関が所有しているスーパーコンピュータです。
表1内の「理論最大性能」はCPUの動作周波数や1秒間に実行できる演算回数などを元に算出された理論的な最大性能値です。また、「実際の最大性能」とはLINPACKベンチマークと呼ばれるプログラムを実行した時に得られた性能です。
LINPACKベンチマークはテネシー大学のジャック・ドンガラ博士らが開発し、1979年に公開された浮動小数点演算の性能測定プログラムです。その実体は下図のような係数が密行列になっている連立1次方程式を解くプログラムです。
TOP500ではLINPACKベンチマークで得られた性能を元にランキングを作成しています。ですので、Stampede(8位)の理論最大性能は、Piz Daint(6位)とShaheen II(7位)より高いですが、LINPACKベンチマークによる実際の最大性能がそれらより低いため8位となっています。
このLINPACKベンチマークですが、実は近年になって1つの問題を抱えています。
TOP500は1993年に始まったので、最初のランキングから既に20年以上経っています。その間,この評価方法は一切変わっていません。
ですが、この間にスーパーコンピュータはとんでもないスピードで成長をしてきました。そして、同時に、スーパーコンピュータを利用する科学分野は多くなり、処理するアプリケーションの特徴も様々なものとなりました。もちろん、ビックデータに代表するようにスーパーコンピュータで処理する問題の規模も増大していきました。
その結果、現代のスーパーコンピュータで扱う問題においてLINPACKベンチマークに相当する密行列の連立一次方程式を計算する機会は、相対的に減少してきたのです。
そのため、スーパーコンピュータの本来の性能を測るにはその時代その時代でスーパーコンピュータが扱っている処理に則したベンチマークを用いて測定するべきだとの意見が出てきました。
2013年11月にアメリカで開かれたSupercomputer Conference 2013(SC13)※2に参加した際、LINPACKベンチマークの開発者の一人であるジャック・ドンガラ博士の講演を聞く機会がありました。その講演で、ジャック・ドンガラ博士も「LINPACKベンチマークより時代に則したベンチマークで性能測定しなければならない」と主張されていました。
そこで、現代のスーパーコンピュータで扱うアプリケーションの特徴を元にHPCGベンチマークが開発され、2014年6月からHPCGの性能によるランキングが登場しました。HPCGは大規模な連立一次方程式を解く共役勾配法のプログラムです。
また、Graph500と呼ばれるランキングも登場しました。もしかしたら、Graph500はメディアでも少し報道されていたのでご存じの方もおられるではないでしょうか。
2015年7月に京が1位となったランキングです。
Graph500は大規模なグラフを解析するプログラムをベンチマークとして用いたランキングです。このグラフ解析はビックデータ解析やソーシャルサービスでの関連性の発見などで利用されています。
表2と表3はそれぞれGraph500とHPCGのランキングです。各表には各スーパーコンピュータのTOP500でのランクも記載しました。
表2 2015年上半期のGraph500(Graph500, http://www.graph500.org )
順位 |
スーパーコンピュータ |
国 |
TOP500の順位 |
1 |
京 |
日本 |
4 |
2 |
Sequoia |
アメリカ |
3 |
3 |
Mira |
アメリカ |
5 |
4 |
JUQUEEN |
ドイツ |
9 |
5 |
Fermi |
イタリア |
32 |
6 |
天河2号 |
中国 |
1 |
7 |
Turing |
フランス |
60 |
7 |
Blue Joule |
イギリス |
41 |
7 |
DIRAC |
イギリス |
61 |
7 |
Zumbrota |
フランス |
98 |
7 |
Avoca |
オーストラリア |
101 |
表3 2015年上半期のHPCG(HPCG, http://hpcg-benchmark.org )
順位 |
スーパーコンピュータ |
国 |
TOP500の順位 |
1 |
天河2号 |
中国 |
1 |
2 |
京 |
日本 |
4 |
3 |
Titan |
アメリカ |
2 |
4 |
Mira |
アメリカ |
5 |
5 |
Pleiades |
アメリカ |
11 |
6 |
Piz Daint |
スイス |
6 |
7 |
Shaheen II |
サウジアラビア |
7 |
8 |
Stampede |
アメリカ |
8 |
9 |
SuperMUC |
ドイツ |
20 |
10 |
ARCHER |
イギリス |
34 |
これらの表から面白いことが見えてきます。
なんと!
TOP500では下位のスーパーコンピュータが、上位のものより高い性能を達成し、HPCGとGraph500で上位にランキングされているのです。
例えば、TOP500で32位のFermiはGraph500では5位です。ビックデータ解析においては、FermiはTOP500で1位の天河2号よりも高い性能を実現できるのです。
京もLINPACKベンチマークではSequoiaと天河2号より性能は劣りますが、ビックデータ解析ではそれらより高い性能を達成できたためGraph500で1位を獲得しました。
HPCGにおいても同じような現象は見受けられます。
各スーパーコンピュータの構成が異なるため、このような現象は発生します。
CPUは何を使用するのか?
GPUを計算のメインユニットとして利用するのか?
サーバ間はどのような通信手段を利用するのか?
などなど。
スーパーコンピュータを開発時には様々な選択肢があり、その選択でどのような処理に向くのかが決まってきます。その結果、各スーパーコンピュータで得意な処理と不得意な処理が出てくるのです。
意外かもしれませんが、スーパーコンピュータにも得手不得手があるのです。
表4に、今回紹介したランキングの特徴と実アプリケーションをまとめました。
表4 各ランキングの特徴と実アプリケーション
ベンチマークの処理内容 |
TOP500 |
Graph500 |
HPCG |
係数が密行列になっている
連立1次方程式を解く
(境界要素法など)
|
◯ |
|
|
グラフ解析
(ビックデータ解析など) |
|
◯ |
|
係数が疎行列で大規模な
連立一次方程式を解く
(有限要素法など) |
|
|
◯ |
先にも述べましたが、スーパーコンピュータは様々な分野で利用されているので、高い性能を実現できる処理はできるだけ幅広く抑えるべきであります。
そのように考えるとTOP500、Graph500、HPCGで上位に入っている京は非常にバランスが良いスーパーコンピュータであると言えます。別の言い方をすれば、より幅広い分野で活躍できるスーパーコンピュータなのです。
さて、今回はスーパーコンピュータの3つのランキングを用いてについてお話をさせていただきました。
次回は、現在行われている次世代スーパーコンピュータの研究や開発を紹介しようと思います。
※1 フロップス:1秒間に浮動小数点演算できる回数。浮動小数点演算とは小数に対する演算処理のこと。1ペタフロップスは1秒間に1015回浮動小数点演算を行うことができることを示します。
※2 正式名称はInternational Conference for High Performance Computing, Networking, Storage and Analysis