Linpack が計算負荷に対するコンピュータの性能を判定する正しい基準だとは誰も思っていない(ISC'18 Cray 副社長)

スーパーコンピュータの性能を測る基準として,ExaScaler の田中英行氏は「明らかに Linpack が一番バランスが良い.それに異論があるとは思えない」と言っています.しかし実際は多くの異論があることを,世界のスーパーコンピュータ関係者による発言を引用することで示します.

PEZY Computing, ExaScaler の Gyoukou が世界4位のスーパーコンピュータと呼ばれて約1年が経ちました.この4位は Linpack (High Performance Linpack, HPL) と呼ばれるベンチマークテストによる Top500 の順位のみであったため,Gyoukou が別のベンチマークテストである HPCG, Graph500 の記録を提出していないことに疑問の声がありました.この疑問に対して,ExaScaler の田中英行氏は,

と,Linpack が一番バランスよく,そのことに異論があるとは思えない,と理由や根拠を示さず述べました(Top500 上位20位のうち HPCG のスコアを提出していないのは,Gyoukou とあと1つだけで,上位10位のうちでは Gyoukou だけです).Top500 の主催者である Jack Dongarra 氏が「Linpack は,スーパーコンピュータの実用アプリケーションの大部分と相関がない」と主張しているのは,数少ない例外的な異論だと思っているのかもしれません(その主張では,アメリカ国立スーパーコンピュータ応用研究所の Thom Dunning 氏による「Linpack ベンチマークを知っている人はほとんどみんな,その実用性を冷笑している」という発言を引用しています).

そこで Jack Dongarra 氏以外の意見として,スーパーコンピュータの国際会議 ISC'18 の参加者(世界トップレベルの関係者)による多くの異論を以下で紹介します.いくつか例を挙げると次の通りです.

性能において,よりバランスの取れた視点を提供するために HPCG ベンチマークの結果を Top500 リストに取り入れました(Top500主催者).
膨大な数のサーバーをまとめて,高い Linpack スコアを魔法のように積み上げることはあなたにだってできる(Top500 1位)
Linpack ではない新しいベンチマークが明らかに必要(Top500 2位).
システムを設計するには,FLOPS (Linpack) は良い基準ではないことがわかった(Top500 6位).
Top500 は(政治家などから)予算を獲得するのに役立つ基準(複数).

明らかに Linpack のバランスが良いなら,高いスコアを上げるのが誰にだってできるはずはなく,別の HPCG ベンチマークの結果を取り入れる必要もなく,システムの設計に良い基準ではないはずがありません.

これらの意見は次の4つに基づいています.

(a) CNET の記事 With IBM Summit supercomputer, US reclaims top spot from China in high-powered computing
(b) CNET の記事 IBM's world-class Summit supercomputer gooses speed with AI abilities
(c) hpcwire の記事 HPC Under the Covers: Linpack, Exascale & the Top500
(d) ISC'18 パネルディスカッション Top500’s Relevance after 25 Years (内容の一部の翻訳を参考資料 1 として最後にまとめました)


国際会議 ISC'18 における Linpack (HPL), Top500 に関する意見

2018年6月期 Top500 主催者

(a) から引用.

But the measurement system the Top500 list uses, a math problem called Linpack, is an incomplete reflection of all the types of work a supercomputer might tackle. On an broader alternative called High Performance Conjugate Gradients (HPCG), Summit and Sierra took the first and second places.
しかしTop500 リストが使う測定システムである,Linpack と呼ばれる数学の問題は,スーパーコンピュータが取り組むであろうすべての種類の作業を不完全にしか反映しない.HPCG と呼ばれる,大局的な別の測定基準では,Summit と Sierra は1位と2位だった.

"We have incorporated the HPCG benchmark results into the Top500 list to provide a more balanced look at performance," the organizers said of the June 2018 list.
性能において,よりバランスの取れた視点を提供するために HPCG ベンチマークの結果を Top500 リストに取り入れました.」と,2018年6月期 Top500 リスト主催者は話しました.

Dave Turek (IBM high-performance computing 部門 副社長,Summit Top500 1位)

(b) から引用.

"There's got to be more than one figure of merit that characterizes value," Turek said. "You can put a huge number of servers together and conjure up a high Linpack score, but to get them to scale on real applications is a real art."
「価値を特徴づける性能指数は2つ以上あるべきだ.」と Turek は言う.「膨大な数のサーバーをまとめて,高い Linpack スコアを魔法のように積み上げることはあなたにだってできる.しかし,膨大な数のサーバを実際のアプリケーションで効率的に動かすのは,本当の技術だ.」

Yutong Lu (National Supercomputing Center in Guangzhou, Tianhe-2 Top500 2位, ISC 2019 Program Chair)

(c), (d) より抜粋. 

Top500 が貢献した点のキーワードは2つ.一般向けの宣伝 (propagation) と技術の広報 (promotion).
現在,データアクセスがシステムのボトルネックになっていることに,私たちは皆気づいています.ですから,その部分を計測する新しいベンチマークが明らかに必要です.

Steve Conway(Hyperion Research 最高執行責任者 スーパーコンピュータ関連のコンサルティング会社)

(c), (d) より抜粋. 

Top500 最大の貢献は,政府の補助金担当者の注目をスーパーコンピュータに向けさせ続けたこと.
Top500をスーパーコンピュータの性能を予測するのに使うと危険 (fatal).HPCG や Green500 にも注意が払われ,Top500 リストに含まれたことは喜ばしい.

Thomas Schulthess (Director of the Swiss National Supercomputing Centre (CSCS), Piz Daint Top500 6位)

Top500 の最も貢献した点は政治的な注目を集めたこと.それによってスーパーコンピュータ関連の予算が潤沢になった.
アプリケーションで明確な目標があるなら,Top500  (Linpack) は邪魔 (distraction).システムを設計するには,FLOPS (Linpack) は良い基準ではないことがわかった.過去を振り返るにはよいかもしれないが,未来を見るにはよくない.

Steve Scott (Cray 上席副社長, 最高技術責任者)

Top500 の一番の貢献は歴史的記録としてスコアが残ったこと.Linpack が計算負荷に対するコンピュータの性能を判定する正しい基準だとは,誰も思っていない.しかし,その単純さから,だれでも実行することができる.
Top500の基準を変更することはできない.なぜなら,歴史的記録の観点を無価値にするから.スーパーコンピュータのシステムを調達する人は,スーパーコンピュータにとって何が本当に重要で,Linpack はそうでないことを理解する,事情のわかっている人々でなければならない
Linpack 性能は実際のアプリケーションの性能から,時代とともに離れて行っている.

これらの意見は,過去記事の Jack Dongarra 氏のインタビューの内容と同じです.「詳しい人なら Linpack が実用性の基準にならないことを知っている」という 2010年における  Thom Dunning 氏の見解が現在も正しいことがわかります.

HPCG は有害という主張

Top500 主催者,Yutong Lu 氏,Steve Conway 氏,Steve Scott 氏はデータアクセスに関する新たな基準(に対応する HPCG)を Top500 に追加することに賛成しています.しかし,その考えへの反対もあります.

神戸大学教授の牧野淳一郎氏と東京大学名誉教授の平木敬氏は HPCG は有害 (HPCG considered harmful) だと,2014年から継続して主張しています(関係するツイートをこの記事の最後にまとめました).牧野氏によれば,「個人的には、 HPCG は駄目なベンチマークでこういうのが普及するようでは HPC の研究開発にとって大きな害であると思う。」とのことなので,牧野氏の考える HPC(high-performance computing, スーパーコンピュータ) の研究開発にとって,大きな害が現在も広がり続けていることになります.

HPCG に関する牧野氏,平木敬氏の意見の参考として,国際会議 SC'18 の BoF セッション Pros and Cons of HPCx benchmarks の提案の詳細から一部分を引用します.

HPCG was proposed as a possible alternative to HPL. As its name suggest, HPCG measures the performance of HPC systems for iterations of the Conjugate Gradient method to solve large sparse matrix. Thus, in HPCG, the most time consuming part of the calculation is multiplication of a sparse matrix and a vector using indirect access, without much room for further optimization.
This choice of HPCG to prohibit certain optimizations is quite different from the regulation of HPL, in which the implementers are allowed to implement whatever optimizations, except the ones which reduces the total number of floating point operations executed.
As a result, HPCG measures essentially one single number: The main memory bandwidth for contiguous memory access. Of course, if the main memory is vert small, we’ll see the effect of the network performance.

これによれば,HPCG は連続メモリアクセスに対するメインメモリ帯域幅を測定するもので,ISC'18 のパネルディスカッションで求められていたものと一致します.この文章からは HPCG の何が有害なのか,不明確です.

不明確なのは,ベンチマークの仕組みそのものが有害ととらえていて,その一環として HPCG が有害である,という主張なのではないかというと,そうではないようです.

省電力性能の重要性は疑いのないものです.しかし,Green500 で上位を占めるために大量の冷却エネルギーで演算電力を抑えるコンピュータがあるとすれば,Green500 の上位は省電力性能との関係が薄くなり,1位を目指す意味はなくなります.

政治的な注目のための基準

ISC'18 のパネルディスカッションでは,Linpack の値によって Top500 が順位付けされることから,政治的な注目を集めている,と Top500 上位陣は語っていました.それは日本も同じのようです.

衆議院議員の伊佐進一氏は,Green500 を実利のあるランキングと紹介しています.確かにスーパーコンピュータは大量の電力を必要とするので,省電力性,消費電力性能は重要です.

しかし,Green500 はおおざっぱにいえば,演算のための電力量あたりの電力量で順位が決まり,同演算性能でも2倍の電力を消費するコンピュータの方が上位に来ることもある順位です.スーパーコンピュータは演算で発生する熱を冷却する必要がありますが, Green500 においてその冷却の電力は測定不要です.このため,冷却の電力を大量に使って演算のための電力を抑えるコンピュータが Green500 の上位に来ることが可能です.

パネルディスカッションにあったように,政治家を説得するにはランキングは非常に効果的です.Green500 がどのように順位付けされているかが理解されないまま,その順位だけでスーパーコンピュータに関する政治的判断が行われることは日本でも起こっているのかもしれません.Cray の Steve Scott 氏が話していたように,「スーパーコンピュータのシステムを調達する人は,スーパーコンピュータにとって何が本当に重要で,ランキングの順位はそうでないことを理解する,事情のわかっている人々」であってほしいと思います.

消費電力性能についてなら,「演算の電力が少ないなら,冷却に(つまり全体に)どれだけ電力が掛かっても構わない」というスーパーコンピュータが求められているなら,伊佐進一氏の資料にあるように,Green500 の順位だけで十分でしょう(その結果,省電力にはなりませんが).しかし,冷却を含むスーパーコンピュータ全体の消費電力を抑えることが重要であるならば,Green500 は消費電力性能の順位として不十分です.

まとめ

ExaScaler の田中英行氏による「明らかに Linpack が一番バランスが良い」に対する異論が,世界のスーパーコンピュータ関係者から数多く上がっていました(異論しかありませんでした).そしてLinpack のスコアだけに基づく Top500 で4位であることだけで世界4位のスーパーコンピュータと呼ぶのは適切ではないことが示唆されました.

この記事で見てきた意見によれば,Linpack だけでは性能を判定できないので,メモリアクセスに関するベンチマークを追加するものの,システムの評価は実際に動作するアプリケーションが重要視される,というのが,異論もありつつ主要な考えだと思われます.

ただ,人数が多い(Top500 上位の関係者だ)からといってその意見が正しいとは限りません.牧野淳一郎氏,田中英行氏らは当たり前な HPCG の有害さ,明らかな Linpack のバランスの良さをこれから示されるのだと思います.Top500 上位の関係者の反対意見が揃っている現状では,「明らか」「当たり前」では彼らに伝わらないでしょうから,具体的な理由や根拠を彼らに説明していくのでしょう.

有害な値であっても,単一の値だけでなく,複数わかっている方が,後で取捨選択して比較できるという点で有用です.省エネルギー性能においても,Green500 のスコアだけではなく,冷却電力を含めた全体の消費電力や PUE などの値もあわせて比較することが必要でしょう.

参考資料 1 ISC'18 パネルディスカッション Top500’s Relevance after 25 Years (一部)

質問1の部分は (c) HPC Under the Covers: Linpack, Exascale & the Top500 に書かれていないため,(d) ISC'18 パネルディスカッション Top500’s Relevance after 25 Years の聞き取れた部分を要約しました.質問2の部分 は (c) をもとに訳しました.後半の質問は,Top500 が各個人に与えた影響と25年後の Top500 の予想となっていますが,聞き取れない部分が多かったため省略しました.

質問1. Top500 がスーパーコンピュータ (HPC) 業界に最も貢献した点は?

Yutong Lu
Top500 貢献のキーワードは2つ.一般向けの宣伝 (propagation) と技術の広報 (promotion).Top500 はスーパーコンピュータのすること,してきたことを広く一般に伝えました.Top500 のリストを見ると,スーパーコンピュータそのものだけでなく,周辺技術へのリンクもあるので,CPU, ネットワーク,入出力などの最新の技術をベンダーやユーザに知らせてきました.

Steve Conway
Top500 の最大の貢献は,政府の補助金担当者の注目をスーパーコンピュータに向けさせ続けたこと.冷戦後の不況時に,スーパーコンピュータ業界にとって大きな助けになりました.そしてTop500 がなければ,エクサスケール競争は3,4年遅くなっていたでしょう.

Thomas Schulthess
Top500 が最も貢献した点は政治的な注目を集めたこと.それによってスーパーコンピュータ関連の予算が潤沢になりました.

Steve Scott
一番の貢献は歴史的記録.Linpack が計算負荷に対するコンピュータの性能を判定する正しい基準だと思っている人はだれもいません.しかし,その単純さから,だれでも実行することができます.この業界に関する価値ある歴史的データが25年分蓄積されたため,スーパーコンピュータのトレンドや分析が可能になりました.

質問2. Top500 の改善点は?

Yutong Lu
二十数年前を振り返れば,計算力がシステム全体のボトルネックだったので,そのときは Linpack が適切なベンチマークで,それがこれまで20年続きました.しかし現在では,データアクセスがシステムのボトルネックになっていることに,私たちは皆気づいています.ですから,その部分を計測する新しいベンチマークが明らかに必要です.それが私たちが改善すべき何かです.

Steve Conway
Top500 は,スーパーコンピュータに影響する要素の全体調査として素晴らしいものです.しかし,そう意図したことはないにもかかわらず,性能を予測するものと解釈されてきました.たばこのラベルの警告のように「Top500を性能予測に使うと危険です」と考える方が良いでしょう.HPCG や Green500 にも注意が払われ,Top500 のリストに含まれたことは喜ばしいことです.Top500 と HPCG, Green500 に同じ価値をつけるのが望ましいと思います.

Thomas Schulthess
Top500 の関連性は,政治の視点や予算獲得の視点にもとづいています.アプリケーションの性能の視点では,話は非常に異なります.アプリケーションで明確な目標があるなら,Top500 は実際邪魔なものです.例を挙げれば,FLOPS (Linpack) において TaihuLight は Piz Daint に5倍の差をつけていますが,天候シミュレーションのベンチマーク(傾圧不安定性テスト)では,Piz Daint の方が2,3倍速くなります.
システムを設計するには,FLOPS は良い基準ではないことがわかりました.過去を振り返るにはよいかもしれませんが,未来を見るには良くない基準です.科学的目標に関係する基準が必要です.例えば,与えられたサイズの問題に対して1日あたり何年分シミュレーションができるか,という基準が考えられます.そして,問題のサイズが影響することも重要です.Top500 (Linpack), HPCG ではFLOPS の値を最大化するために問題のサイズ(訳注 行列の大きさ)を変更することがルール上許されています.工学的観点からは,問題のサイズの変更は現実に即していません.何かをするときに,何かの数字を最大化するためだけに目標を変更することはあり得ません.
目標を設定する必要があります.天候シミュレーションでは,明確な目標があり,皆が関係しています.分野の異なる皆が自分自身の目標をばらばらの基準にするよりも,科学コミュニティがいくつかの目標に対して一致団結することを望みます.性能基準だけでなく,問題のサイズも設定して,それらは時代の変化に応じて変更できる.しかし,比較するのは同じもの同士でなければなりません.Top500 で見落とされている最後の点は,アルゴリズムや方法について.アルゴリズムの変更はアーキテクチャを変更するのと同じように重要です.

Steve Scott
Thomas Schulthess 氏の意見に,科学的観点からは大賛成.実際的観点からはまったく賛成できません.
1日当たりのシミュレーション年数は面白く有用な基準だと思いますが,そうする方法はありません.歴史的記録の観点を無価値にするので,リストの基準を変更することはできません.スーパーコンピュータのシステムを調達して,巨大なシステムを作る人々(訳注 政府など開発費を提供する側)は事情がわかっていなければなりません.事情がわかっている人々というのは,スーパーコンピュータを作るために何が本当に重要で,Linpack は重要ではないことを理解する人々のことです.Top500 は悪い結果も引き起こしてきました.Top500リストで高い順位を得るための決断をしてきた人々もいます.そして,「スーパーコンピュータを購入するけれど,Top500 リストには掲載しない.あの基準は納得できないから」という人もいます.現実には,Top500 ベンチマークを変更することはできないので,何かを追加するのがよいと思います.HPCG や HPCC を追加する試みがありました.追加することはできても,変更することはできないと思います.
HPL 性能は実際のアプリケーションの性能から,時代とともにより離れて行っています.メモリバンド幅やインターコネクトなどがとても重要になっています.アーキテクチャの面も重要です.CMOS時代の最後に近づくにつれ,計算方法を変更するか,まったく異なるアーキテクチャにいくか,など何かしなければいけない状況に迫られています.いまのところは,現在の方法を続ける以外にできることが多くあるのかはわかりません.

参考資料 2 HPCG に関する牧野淳一郎氏と平木敬氏のツイート

2014年

2015年

2016年

注: 前者,後者を説明しているツイートは見つかりませんでした.

2018年


この記事が気に入ったらサポートをしてみませんか?