もう1つの問題は、どこまでの機器を含めて消費電力を測るかという点である。昔はインタコネクトの電力はコンピュータ本体に比べて無視できる程度であったが、現在では10%~20%に達するという報告も多くなってきている。インタコネクトの消費電力を含むかどうかでエネルギー効率はかなり影響を受ける。

右の図は、測定法によって、「SuperMUC」(ドイツのLRZに設置されたスパコン)のMFlops/Wがどのように変化するかを示している。Level 1測定では1055MFlops/Wであるが、Level 2でインタコネクトの電力を含めることにして、10kW以上の部分という測定では1011MFlops/Wとなり、約4%低い値となる。また、Level 2で全体の1/8以上を実測すると994MFlops/Wとなり、約6%の低下となる。そして、Level 3でストレージ、冷却、電源分配ロスの電力も含めて、システム全体の電力を実測すると887MFlopsとなりスコアは約16%低下する。

ネットワークの電力は無視できるレベルであったが、最近は10%~20%となっているという報告が増加している

SuperMUCでのLevel 1~3の測定でのMFlops/W値の違い

結論は、現在のLevel 1測定の規定は不十分であるというものであり、

  1. コアフェーズの100%の期間の電力測定
  2. システム全体の1/16以上の部分の電力の実測
  3. 計算ノードに加えて、ネットワークの電力も含める

ことを提案するという検討結果が報告された。

結論は現在のLevel 1測定の規定は不十分であり、コアフェーズの100%の電力測定、1/16以上の部分の測定、ネットワークの電力も含めることを提案する

Green500を始めた主要な目的は、スパコンの電力効率に目を向けさせ、スパコンの電力効率の改善の後押しをすることである。その結果を示すのが、次の4枚の図である。

左上は、MFlops/W値の分布をリストの発行日別に推移を描いたもので、最大値は大幅に改善されてきている。またMedianも比率としては上がって来てはいるが、大部分のシステムのMFlops/Wの値は、まだ、低いところに留まっている。右上の図は同じ情報をGreen500リストのランキングで表わしたもので、赤の部分は1位から9位、緑の部分が10位から99位、青の部分が100位から499位となっている。今回のリストで言えば、1位は5000MFlops/Wを超えているが、10位は3000MFlops/W、100位は1000MFlops/W程度であり8割のシステムが1000MFlops/Wに達していない。しかし、10位、100位の効率も、毎回、上がってきているので、電力効率が注目されるようになっていることは間違いない。

左下の図は電力Max、Mean、Median、Minの推移を表している。Green500リストに入るシステムの最小消費電力Minには明確な傾向がないが、Max、Mean、Medianは増加の傾向にあるが、ここ4回のリストでは、増加が止まっているように見える。しかし、これは天河2号や京コンピュータのような消費電力の巨大なマシンがリストに留まっていることが影響しているのかも知れない。

右下の図の左側はMFlops/W値の分布とその推移である。そして、右側はPeak MFlopsに対するLINPACK性能の比率の分布とその推移のグラフである。このグラフは、ヘテロジニアスなシステム、ホモジニアスなシステム、全体と3つの分布が描かれている。MFlops/Wのグラフではヘテロの方が圧倒的に効率が高く、GPUのようなアクセラレータの効率改善効果が大きいことを示している。

Peak MFlopsに対するLINPACK性能の比率は、全体的には緩やかに向上の傾向にあるが、マシンタイプごとに時系列の変化を見ると大きく変動しており、明確な傾向は見られない。

各リストのMFlops/W値の推移。Median、Sigma、それ以外で表示

各リストのMFlops/W値の推移。Green500ランクでの表示

Green500リストに載ったシステムの消費電力のMax、Mean、Median、Minの推移

左はMFlops/W値の分布とその推移。ヘテロ、ホモジニアス、全体と3つの分布が描かれている。右はPeak MFlopsに対するLINPACK性能の比率の分布とその推移

左上の図は、縦軸がMFlopsで表わしたLINPACK性能、横軸にMFlops/Wを取って、各システムをプロットしたもので、ホモジニアスかヘテロジニアスか、ヘテロの場合はどのアクセラレータかなどでシンボルを変えているが、小さいので見づらい。

3000MFlops/Wを超えるエネルギー効率の高い部分は100kW以下の規模の小さいマシンであり、多くは実験機的な性格のマシンと考えられる。3000MFlops/Wより下では電力は大きくバラつくが、台数的には500~1000MFlops/Wあたりに塊があり、消費電力は200~300kWのものが多い。そして一番大きな塊は100~300MFlops/Wと効率が低く、消費電力が500~2000kWのところにある。この辺の効率が改善すれば、消費エネルギーが大きく減るのであるが…。

そして、右上の図は、Level 0~3の測定のおさらいである。

縦軸はMFlops、横軸はMFlops/Wで各システムをプロット。判読できないがマシンタイプでシンボルが異なる

現状でのLevel 0~3測定のサマリー

コミュニティからのフィードバック

今後の課題

現状のGreen500に関するコミュニティからのフィードバックは、

  1. 冷却や関連するするインフラストラクチャの電力を含めるべき
  2. ソフトウェアでのエネルギー効率のチューニングを行うべき
  3. Level 0の測定をやめるべき
  4. Level 1もLevel 1+(今回の改善提案)やLevel 2に置き換えていくべき

というものである。

そして、今後やるべきことは、現在は60%しかない実測ベースの電力測定を推進し、HPCのGreen化を推し進めること。さらに、 (1)Level 0、1からLevel 2、3への移行。(2)Flops/Wという指標が適切か?、(3)負荷としてLINPACKが適切か? そして、これらに代わるより良い指標を探すことである。

Green500は、ここで説明したように、まだ、不完全で多くの悩みを抱えているが、スパコンの電力効率に人々の目を向けさせ、その改善に貢献してきているという功績は大きい。