研究会報告
開催報告:第9回 HPC-Phys 勉強会
2020年12月3日(木曜)に第9回HPC-Phys勉強会が開催されました。この勉強会は前回に続き、理化学研究所計算科学研究センター(R-CCS)共催のオンライン開催となりました。参加登録は講演者含めて 50名となりました。
今回もスーパーコンピュータ富岳を意識した講演となりました。
一つ目の講演は、JIT アセンブラである Xbyak(カイビャク)の話をその開発者である光成滋生さん(サイボウズ・ラボ)にお願いしました。高速化を突き詰めるとスパコンのプログラムの一部にアセンブリ言語を用いることがあります(難易度が高いので一部の人しかしません)。CPU によって命令セットが異なるので、例えば富岳(CPU はA64FX)と、インテルの CPU を用いたスパコンやパソコンでは使えるアセンブリ言語は異なります。アセンブリ言語も計算機が理解できる機械語への翻訳が必要で、通常はプログラム実行前に行います。この翻訳をプログラム実行時に行うのが JIT アセンブラで、実行時に分かる条件を反映した最適な機械語を生成します。光成さんは、指数関数の Xybak を用いた実装を題材に、A64FX の命令セットと Intelの AVX-512 命令セットの比較をしてくださいました。
2つ目の講演では、竹重和明さん(富士通)に、富岳での密行列の掛け算のチューニングの話を伺いました。実はこの掛け算の性能が、スパコンランキング Top500 の結果に直結しています。現代のスパコンで性能を出すには、遊んでいるCPUコアを減らすように並列化を極める必要が有ります。またメモリアクセスが計算の足を引っ張らないような工夫も必要です。竹重さんたちがチューニングを施した行列の掛け算は、なんと最大96%の驚異的な効率で動くそうです。富岳の2020年6月、11月の2期連続での Top500 首位獲得に貢献したとのことです。
講演での質疑応答に加えて、講演後に用意されていた長めの議論の時間でも足りないのではと思えるほど議論が続きました。一部はA64FXの命令セットの詳細に立ち入ったマニアックな議論になりましたが、富岳での高速化に興味がある参加者にとって一味違った情報共有の場になったようです。また前回同様、物理分野(計算科学)だけではなく計算機科学分野の専門家も多く見受けられました。
次回は富岳を離れて GPU 特集を予定しています。
講演資料は勉強会 web site
http://hpc-phys.kek.jp/
をご参照ください。