スパコン分野の大規模国際会議 SC18

Arai, Junya
nttlabs
Published in
20 min readDec 25, 2018

こんにちは.NTT 研究所の新井です.
会社では「計算の高速化」を軸に,効率的な並列グラフアルゴリズムの研究や,深層学習用 GPU クラスタの構築,レーザー光を用いた計算機 LASOLV を活用するための計算システムの設計・実装などに取り組んでいます.

本記事では私が11月に参加したスーパーコンピュータ (スパコン) に関する世界最大の国際会議 The International Conference for High Performance
Computing, Networking, Storage, and Analysis (Supercomputing, SC)
についてご紹介いたします.

SC18 期間中のダラス.

SC とは

スパコンの会議と聞いて具体的なイメージが湧かない方もいらっしゃるかもしれません.SC が扱う分野は高性能計算 (high-performance computing, HPC) とも呼ばれます.私の言葉で説明すると,HPC 研究の大目的は「これまでにないほど高速な計算の実現」と「高速な計算の活用」です.高速な計算のためには様々な手段が用いられます.基本は多数の計算機を用いた並列分散計算ですが,特定の計算に特化したハードウェアや量子計算の話題も盛り上がりを見せています.また,その計算力の活用先も様々です.シミュレーションなどによって気象や天文といった科学的な問題を解く計算科学 (computational science) が中心ではありますが,近年は特に深層学習を代表に産業でも関心が高まっています.HPC という研究領域は高性能な計算機システム,システムを駆動するためのソフトウェアやノウハウ,そして高い計算力によって実現されるアプリケーションにまで渡る広大なものです.

SC では以上のような HPC 分野の研究発表に加えて,「2位じゃダメなんでしょうか」以降話題になったスパコンランキングの発表,および企業や研究機関による新製品や研究成果の展示会も開かれます.そのため参加者数も膨大で,2013年以降常に1万人を超えています.一方で論文数は60~100程度で推移しており,参加者数を踏まえると少なく見えます.しかし30~40件ほどの併設ワークショップのほか,ポスター,パネル,招待講演に加えて展示会もあるため,開催期間中は毎日大忙しです.

忙しい理由は会議プログラムだけではありません.上で述べた通り SC には多数の HPC 関係者が集結します.その方々と休憩時間に話をしたり,夜は食事をご一緒したりと,交流を深めるためにも絶好の機会です. SC は米国で開催されるため参加者も米国からが多く,毎年参加している研究者が多く見られます.一方で国別にみると日本もかなり大きな存在感があります.2013年は563/10,550人が日本からの参加者でした.展示会でも富士通,NEC,理研,NICT,東工大,東大など日本の団体のブースが多数立ち並びます.国内の学会よりも SC のほうが知り合いに会いやすいのではと思うほどです.

SC における過去の講演のいくつかは YouTube で観ることができます.また,マイナビニュースさんは HPC の話題に関して充実した記事を提供してくださっています.今年の SC の記事も既に公開されていますので,より詳しく知りたい方はぜひそちらもご覧ください.

今年の概要

今年の SC (SC18) は11月11日 (日) ~16日 (金) に米国テキサス州ダラスで開催されました.参加者は13,071名で,過去最高を記録しました.なお SC は展示会も兼ねているので,全員が論文発表等の Technical Program に参加するわけではありません.Technical Program の参加者について今年の正確な数字を見つけることはできませんでしたが,カンファレンスバッグの用意が5,500とのことなので,5,000名程度でしょう.論文数は昨年から7件増加し68件でした.また会議中の発表によると展示会場の面積は550,000平方フィートとのことで,これは東京ドーム1.1個分に相当します.展示ブース数は364でした.

会場の Kay Bailey Hutchison Convention Center (左).キーノートなどで使われるメイン会場 (右).

SC18 は SC 30周年という意味で記念すべき回です.30年間の歴史を展示するブースが設置され,Cray-1 を中心にプロセッサやマニュアル,SC のノベルティなどが展示されていました.

SC 30th Anniversary Exhibit の様子.右は Cray-1.

SC は全て書こうとするとあまりにも盛りだくさんですので,本記事では深層学習と量子計算を中心にいくつかの話題についてご紹介いたします.

深層学習

私は SC12 と SC15~17 にも参加していますが,深層学習関連の研究は年々存在感を増しています.SC15 において既に機械学習のワークショップは立ち見が出るほどの盛況ぶりで,展示会でも深層学習向け GPU サーバなど多くの展示がありました.一方で SC 本体での研究発表は目立っていませんでした.その後 SC16, 17 と並列分散計算による深層学習の高速化を中心に存在感を増したものの,GPU ではなく Xeon Phi を使用しているなど問題設定が特殊で.深層学習の研究という意味ではインパクトが分かりにくく感じられました.

それに対し SC18 では,深層学習を計算科学の道具にするとともに,そのための手段として深層学習を高速化している様子を見て取ることができました.その例の一つが今年 Gordon Bell 賞を受賞した “ Exascale Deep Learning for Climate Analytics” という論文です.Gordon Bell 賞は計算科学の成果と達成性能に対して計算機の学会である ACM が毎年 SC で与えます.この論文では気象データに基づき異常気象に見舞われている地域を深層学習によって特定しました.2018年11月のスパコンランキング (TOP500) で1位の Summit を使用し,27,648 GPU (Tesla V100) による並列分散計算で 3.5TB のデータを学習しています.ニューラルネットワークのアーキテクチャは Tiramisu と DeepLabv3+ の改造版です.商業的な分野と比べ科学では高次元かつ高解像度のデータを使用するため,既存技術をそのまま適用するのは難しいそうです.そのため,気象分析に対する深層学習の適用と,様々な工夫による大規模スパコン上での高速な学習は大きな貢献となります.また,この研究の実装は OSS である TensorFlow と Horovod を基にしており,成果を既に別のプロジェクトでも利用しているそうです.そのことからも計算科学の手段としての深層学習が定着しつつあることを読み取れます.

Kurth+, “Exascale Deep Learning for Climate Analytics,” SC18. より引用.深層学習による領域抽出の結果.

ちなみに,Gordon Bell 賞の候補は他にもあり,今年は6候補から2つの研究が受賞しました.受賞しなかった論文の一つである “167-PFlops Deep Learning for Electron Microscopy: From Learning Physics to Atomic Manipulation” は電子顕微鏡で得た画像からの情報抽出のために深層学習を用いるというものです.詳しい内容は確認できていませんが,こちらも科学のための深層学習の利用例になっていそうです.またこの研究も Summit を使用しています.

IBM のブースに展示されていた Summit の筐体.

最終日 (11月16日) に開催されたワークショップ “Deep Learning on Supercomputers” ではさらに多くの適用事例について発表を聴くことができました.SC 最終日はワークショップのみの半日プログラムなので一足先に帰ってしまう人が多く,全体的に人が減ります.しかしこのワークショップは百数十人以上の参加者を集め,立ち見が出るほどの賑わいでした.キーノートではレーザー核融合を例に,シミュレーションと実験に加わる第3の柱としての深層学習の利用について紹介されました.これまで一部の特徴量のみ使用してシミュレーションと実験結果の整合性を判定していましたが,深層学習を用いることで全ての特徴量を用いた比較が可能になります.さらに時系列の変化を捉えることで,現実と乖離したシミュレーションに陥ったとき早期に計算を打ち切ることができます.そのためのニューラルネットワークの学習には大量のデータが必要で,全てを実験で得るのは困難です.そこで初めにシミュレーションデータで学習し,その後実際の実験結果を用いて転移学習させます.さらに効率的な分散学習のためのソフトウェアスタックも開発したとのことです.割愛しますが,キーノート以外にも計算科学への深層学習の適用や,研究機関における深層学習の設備や利用状況,効率的な分散学習のための手法提案など興味深い発表を聴くことができました.日本からも PFN の浅井さんから PFDet に関する発表がありました.

“Deep Learning on Supercomputers” の様子.

SC が HPC の学会である以上,深層学習と計算性能の話題を切り離すことはできません.現在学習性能のベンチマークは事実上 ImageNet の学習ということになっています.SC 期間中もソニーが新記録を発表し話題になっていました.これに対し,TOP500 のようにレギュレーションを定めてベンチマークしようというパネル形式の Birds of Feather (BoF; 特定の話題について発表や議論をする比較的カジュアルなセッション) が開かれました.その名も “Deep500: An HPC Deep Learning Benchmark and Competition” です.しかし結論から言うと,レギュレーション策定までの道程はまだかなり長いように感じられました.箇条書きで論点を抜粋してご紹介します.

  • 1秒当たりの演算回数 (throughput) と学習完了までの時間 (time-to-solution) のどちらを測るか.前者はレギュレーションを定義しやすいが,学習の結果得られる精度を考慮しなければ意味のない計算になる.
  • データセットをどうするか.現代のスパコンの規模に対して ImageNet は小さすぎる.オープンなデータを用意したい.
  • HPC ではファイルサイズが大きいので,I/O を含めた性能測定をすべきではないか.
  • 何年同じレギュレーションを使うか.技術の進歩に合わせて変えざるを得ない一方で,歴史的なデータを蓄積することには意義がある.
  • 手法に依存しない測定基準,または手法の固定が必要.Graph500 はアルゴリズムの変更を許しているが,それを許すと計算機性能ではなく人間の技術力ランキングになる懸念もある.

最後の論点はなかなか難しい問題だと思います.Graph500 はグラフ処理を用いたベンチマークによる性能ランキングです.そのランキングで日本の「京」が2014年6月に4位から1位へ上昇したとき,理由はアルゴリズムの改良にありました.以降2018年11月に至るまでずっと「京」が1位です.実装は公開されているので他の研究チームも真似しようとすればできます.しかし実際にはスパコンのハードウェア的特性が異なることから,別のアルゴリズムを確立するために多くの人的リソースが必要となるはずです.この状況が人間のランキングだと言われると,確かにその側面はあるかもしれません.

またこの BoF ではTorsten Hoefler 准教授よりご自身の記事 “Twelve ways to fool the masses when reporting performance of deep learning workloads” の紹介がありました.スライドもあります.分散並列計算による深層学習では FLOPS のような従来の HPC アプリケーションの性能指標に加え,精度など機械学習としての性能指標も総合的に評価しなければなりません.あまりに多くの評価基準があるため,一部の性能指標のみを発表することで実際よりも優れた研究成果に見せかけることができてしまいます.そのような目的で用いられる (こともある) 12のテクニックを紹介しているのが前述の記事です.例えば次のようなテクニックが紹介されています.

  • (FLOPS やスケーラビリティのみ報告し) 精度を報告しない.
  • (精度を報告するものの) テストデータに対する精度を報告しない.
  • 学習全体ではなく一部の計算処理のみ抽出して性能を報告する.
  • 計算性能の計測と精度の計測で異なるパラメータを使用する.

SC18 の論文もよくよく読んでみるといくつか疑問が出てくると思うので,ご興味のある方はぜひどうぞ.

深層学習は論文セッション “Deep Learning” や,いくつかのワークショップおよび BoF で扱われていますが,ここでは割愛します.

量子計算

これまで半導体技術は概ねムーアの法則に従って進歩してきました.しかしその進歩に限界が見え始めたため,ポストムーア時代に向けて現在普及している計算機 (古典計算機) とは異なる計算方式による性能向上が模索されています.NTT 研究所でもレーザー光の物理的性質によって組合せ最適化問題を高速に解く LASOLV の研究開発を行っています.

SC18 では Microsoft の Matthias Troyer 博士による招待講演 ”A Quantum Future of Computation” がありました.撮影した動画がいずれ YouTube にもアップロードされると思います.講演では量子計算に関する基礎知識に加え,量子アルゴリズムの重要性や量子計算の限界などについて紹介されました.量子アルゴリズムについて Troyer 博士は「論文に載っているアルゴリズムは動かない」ことを指摘しています.誰もデバッグしていないためです.また,必ずしも量子計算機を用いなくても,量子計算の原理を基にしたアルゴリズム (quantum-inspired algorithms) にも有用性があり重要と述べられていました.一方量子計算の限界として強調されていたのは I/O のコストです.量子計算によってどんなに計算が高速化されても,その計算に使用するデータを供給できなければ意味がありません.従って big computation / small data が量子計算機の用途になります.いずれにせよ,量子計算機は特定用途に使用され,古典計算機を置き替えることはないという主張でした.

SC 併設ワークショップ “ The 3rd International Workshop on Post-Moore Era Supercomputing (PMES)” ではポストムーア時代に向けた計算機の話題が扱われました.予稿とプレゼンテーションは PMES のページで公開されていますので,関心のある方はご確認ください.参加者は100人弱ほどで,SC 初日のワークショップとしては混雑していました.この分野の本命と言えるような技術的潮流はまだ見えておらず,IBM Q や D-Wave による量子計算,neuromorphic chip,非厳密計算 (inexact computation) など様々なトピックについて発表が行われました.また,まだ量子計算機を利用できる研究者が少ないせいか,米国エネルギー省 (U.S. Department of Energy; DOE) の国立研究所からの発表が割合的に多くなっています.

PMES’18 の様子.

量子計算機は展示でもアピールされていました.例えば IBM のブースでは量子計算機 Q の模型が大々的に展示されていました.絶対零度近くで動作させるため特殊な構造になっています.私の隣で Q を眺めていた参加者はシャンデリアのようだと言っていました.

IBM のブースで展示されていた IBM Q.

さらに Intel も量子計算チップの展示を行っていたそうです.私はすぐそばまで行きながら見落としていました…….

Intel のブース.右奥に “INTEL QUANTUM & NEUROMORPHIC COMPUTING” と見える.その向こうが IBM のブース.

展示ブース

既に量子計算関連の展示はご紹介してしまいましたが,他にもいくつか印象に残ったものをお見せします.

まず日本の団体に関して言うと,今年は日立製作所のブースがなくなった一方,これまで見たことのなかったソニーが出展していました.展示内容はシンプルで,とにかく巨大なディスプレイをアピールしていました.ブロック状のディスプレイを繋ぎ合わせているため,柔軟にサイズを変更できます.シミュレーション結果の可視化などで HPC 分野に売り込もうとしているようです.ブースの立地が良くディスプレイも目立つので,かなり多くの参加者の目に留まっただろうと思います.

富士通のブースではスパコン「京」の次世代を担うスパコン,「ポスト『京』」のラックと CPU (A64FX) を見ることができました.このラック1つに384ノードが格納されます.最終的な外観はこのままというわけではなく,「京」と同様にかっこいいデザインで化粧されるだろうとのことでした.ポスト「京」の仕様について興味がある方はマイナビニュースさんの記事をご参照ください.

ポスト「京」向けのラック (左),ラックの扉を空けたところ (中央),A64FX プロセッサ (右).

Amazon Web Services のブースでは AWS Batch の展示が行われていました.HPC 分野ではジョブスケジューラによる計算機の共用が広く行われています.具体的には,ユーザは実行したい計算プログラムのコマンドをシェルスクリプトなどに記述し,それをバッチジョブとしてスケジューラのキューに随時投入します.するとスケジューラはクラスタの計算資源をなるべく使きるようにジョブに資源を割当て,実行します.AWS Batch はそのような方式でクラウドの計算資源を提供するサービスです.ジョブが走った分だけ課金されるとのことなので,シミュレーションや深層学習など非対話的な計算ではコストパフォーマンスが良くなるのだろうと思います.AWS は何年か前から継続的にブースを構えていますが,大きさから分かるように HPC 分野に対するかなりの力の入れようです.隣では Microsoft が Azure をアピールしていました.

AWS ブース周辺 (左).ジョブスケジューラ (SLURM) 経由の利用デモ (中央).AWS Batch の紹介 (右).

レセプション

SC 期間中には何度かレセプションが開かれます.申し込み種別によって異なりますが,私の場合,Technical Program とワークショップの参加者なので,2日目の “Gala Opening Reception”,3日目の “Poster / Scientific Visualization & Data Analytics Showcase Reception” (Poster Reception),5日目の “ Technical Program Reception” に参加しました.

Gala Opening Reception は展示ブースの開場と同時に開催されます.空きスペースに料理や飲み物が運び込まれるので,それを飲み食いしながら展示を巡ります.ノベルティを用意している展示も多くありますが,翌日以降だと品切れになる場合もあるので,欲しければこの時がチャンスです.Pure Storage のブースでは T シャツの色と柄の希望に応じてその場で刷っていました.これまで SC で見たことがなかったので,初めてのサービスかもしれません.

右下で料理が提供されている (左).Oracle の T シャツ (中央).Pure Storage の T シャツ刷り (右).

Poster Reception では研究ポスターの発表を聴きながらお酒と軽食をいただくことができます.ポスター発表を聴くと発表者からお酒の交換チケットを貰うことができるシステムです.ポスターに発表者が張り付いているのはこの時間だけですが,BoF など他のプログラムと並列に開かれているので計画的な行動が必要です.

最終日1日前の Technical Program Reception は最も大がかりです.例年スタジアムや博物館が会場になります.今年は “Perot Museum of Nature and Science” でした.写真は掲載に許可が必要なので割愛します.展示物は全て通常通り見ることができますので,SC に知り合いがいなくても楽しく,いればなお楽しいレセプションです.

まとめ

SC は HPC の幅広いトピックを扱います.そのため「これが今年の SC だ」と言えるような説明はなかなか困難ではありますが,今回は深層学習と量子計算を中心に紹介させていただきました.HPC 分野における深層学習は単なる高速化の対象から計算科学の道具へと変化しています.これまで分散処理や GPGPU など HPC 分野で発展した技術を機械学習分野が取り入れる構図でしたが,今後は相互の技術交換によって一層つながりを密にし発展していくものと思います.また,高い計算性能に対するニーズを背景に量子計算は HPC 分野で主要なトピックの一つであり続けるでしょう.

終わりに

私たち NTT は,ハードウェアからアルゴリズムまで共に計算を高速化する仲間を募集しています.ぜひ弊社ソフトウェアイノベーションセンタ紹介ページ及び,採用情報ページをご覧ください.

--

--

Arai, Junya
nttlabs
Writer for

Researcher, Nippon Telegraph and Telephone (NTT) Corp. Graph algorithms / parallel distributed processing / non-von Neumann processors.