ホーム > イベント情報CD-ROMホーム > SS研科学技術計算分科会2013年度会合 > 分科会レポート

SS研科学技術計算分科会2013年度会合 分科会レポート

堤 誠司(宇宙航空研究開発機構)

「京」が切り開いた10ペタフロップススケールの高性能計算機は,今やTOP500に4台も現れる時代となった.ペタスケール計算は実用化の時代に着々と入ってきており,「京」によって実施された実応用計算にて得られた知見の共有化が求められている.更に,エクサスケール計算機開発への気運が高まってきており,その技術課題が徐々に明らかになってきている.そこで,今年のテーマは「ペタからエクサへの課題」とし,「京」における最先端の実用例に関する講演と,エクサスケール計算機において最大の関門である電力問題(Power Wall)に関する研究事例の紹介があった.あわせて,エクサスケール計算機に向けて今後ますます複雑化するノード内のマルチコアチューニングに関するWGの成果報告,富士通コンパイラの開発状況の紹介を含め,大型台風の忍び寄る中,100名を越える参加者が神戸に集まり活発な議論が繰り広げられた.


会場の様子
会場の様子

写真
朴泰祐氏(筑波大学)

まず,企画委員の筑波大学 朴泰祐先生から開会の挨拶と今年の分科会の趣旨に関する説明があり,4件の講演に関する紹介とその意義,懇談会のテーマについて簡単なご説明があった.

写真
梅田隆行氏(名古屋大学)


講演資料抜粋

引続き,名古屋大学 梅田隆行先生から「京」を用いた実応用計算例として宇宙プラズマの第一原理ブラソフシミュレーションに関する講演が行われた.
地球磁気圏はマクロスケールな現象としてMHD方程式で記述できるが,マクロスケールの現象に影響を与える衝撃波や境界層といった中間スケールの現象はプラズマ粒子1つ1つの粒子運動がキーとなる.そこで,このミクロな粒子的挙動をブラソフ法で解析することを目的としている.ブラソフ法は粒子法と比べてノイズレスであり,かつ並列化が容易であるというメリットがあるが,必要メモリ量は桁違いに多いという欠点もある.そこで,現在はメモリ量を削減するために位相空間分布関数を空間2次元,速度空間3次元の計5次元空間で計算している.ブラソフ方程式は5次精度保存型・無振動スキームを利用して計算する.計算コードはハイブリッドOpenMP/MPIを用いて並列化し,ノード間の通信に必要となる“のりしろ”(袖)は片方向に3点ずつ必要である.直径で2.7kmほどの弱磁化天体を計算対象とした5次元ブラソフ計算では必要総メモリが50TB程度となり,「京」の6144ノードを利用して8GB/ノード,計算時間100日とやっと現実的に計算できる範囲内となる.「京」を使った感想として,1)待ち時間が長い,2)大量ファイルの操作にストレスがある,3)可視化の問題,の3点を挙げられていた.
一方,コードのチューニング・性能評価としてノードあたりのメモリが1GBに固定した弱スケーリングを国内の様々なスパコンで実施した.(講演資料抜粋を参照) 性能チューニングのポイントとして,1)同形状の配列があれば1つにまとめる(ただしインデックスの取り方はケースバイケース),2)同一ループ内に負荷の高い(組込or自作)関数がある場合はループを分割する,3)FX10と「京」の特殊事例として整数型の組込関数を使わない,の3つを挙げられた.その他,大規模計算にまつわる困った事例や6次元計算に向けた課題なども併せて発表された.


写真
近藤正章氏(電気通信大学)


講演資料抜粋

2番目の講演は電気通信大学 近藤正章先生で,エクサスケールシステム開発おいて一番大きな壁と考えられているPower Wall問題の現状と今後の打開策についてであった.
Top100の中で最も電力効率が良いスパコンは 2972MFlops/Wattであり,20MWでExaFlopsを実現するためにはこの更に16倍も電力効率を向上させる必要がある.しかし,電力効率の現在のトレンドは2年で2倍であるため,例えば2018年の完成は無理である.ここで,BlueGene/Qの消費電力の内訳を参考にすると,プロセッサ:65%,DRAM:14%,ネットワーク:21%と,プロセッサ・コア以外の消費電力は無視できない.エクサシステムを想定して電力量を試算した場合,プロセッサ・メモリ・データ通信の最先端テクノロジが利用可能となったとして,近藤先生の試算では 10〜30MWとなっている.
Power Wall打開に向けた要素技術として,CPUは Low Voltage Computingや SIMD幅の拡大,メモリは HMC(Hybrid Memory Cube)を利用するなどが考えられる.一方,電力マネジメント技術も重要であり,ハード/ソフトのきめ細かな電力管理が求められる.一例として,Intel Sandy Bridge以降のアーキテクチャに実装された RAPL(Running Average Power Limit)の利用例の紹介があった.
最後に,近藤先生が取り組まれている電力マネジメントフレームワークの研究の紹介があった.エクサスケール時代には,現行のハードウェア資源を有効利用するという考え方から電力資源を有効利用するという考え方へのパラダイムシフトが必要なため,電力制約適応型システムを提案されている.(講演資料抜粋を参照)計算・記憶・通信にかかる電力資源はアプリによって異なるため,電力制約適応型システではこれを“電力性能ノブ”により自動制御することで実行電力を制約以下に抑えようとする.更に,電力資源の適応的配分により実行性能が大きく向上する可能性があることを,実例を交えてご紹介された.最後に,質疑応答において,「京」の実績では計算機自身に要する電力だけではなく周辺のインフラに要する電量は4割ほどであるため,スパコンシステム全体でみて考えることが必要だというコメントがあった.


写真
高木亮治氏(宇宙航空研究開発機構)


講演資料抜粋

3番目の講演はJAXA 高木亮治先生で,マルチコアクラスタ性能WGの成果報告であった.
WGは2010年に立ち上げられ,2.5年間行われた.ユーザアプリケーションとして流体・構造・プラズマといった連続体アプリ(計9個)を中心にチューニングが行われた.(残念ながら,粒子系のアプリは少なかった) ユーザから性能評価ツール(計2個)も提供され,利用法やノウハウが共有された.WGには富士通も参加し,チューニングやコンパイラに関する情報提供があった.活動の成果は成果報告書だけでなく,PRIMEHPC FX10チューニングチュートリアルとしてまとめられている.
ユーザアプリケーションのチューニング実践例として,JAEAのプラズマ解析コードにおいて実装された通信マスク手法では,60万コア@「京」のストロングスケーリングにて 99.99989%という驚異的な並列化率を達成した.また,理研の流体構造連成解析コードはノード内で 46.4%という驚異的な実行性能を達成した.このように驚異的な性能を達成するアプリがある一方で,ノード内チューニングは理詰めで考えていっても結局最後は「試行錯誤の世界」となる.H/Wやコンパイラを開発されている富士通からは例えばソフトウェアプリフェッチの利用を勧められるが,プログラム内のどこで使うのか? という質問に対して明確な答えはあまり得られなかった.
アーキテクチャ(H/W,コンパイラ)と実際のプログラムの動きをなかなか理解できないため,ノード内チューニングはアプリ開発を行う一般ユーザの手の負える範囲を超えているのが実情である.また,今回の活動を通して得られた知識は汎用化・共有化が可能であるが,具体化したとたんに個別ケースになりがちで,得られた知見と個別をつなぐ部分が必要であることが指摘された.
WGで実施してきたチューニングを行うために,アルゴリズムの選択や物理方程式の選択といった部分まで遡った co-design(講演資料抜粋を参照)を見据えた活動が今後は重要であり,SS研ならではのもう少し柔軟な活動形態が求められると提言された.


写真
山中栄治氏(富士通)


講演資料抜粋

4番目は富士通 山中栄次氏から「「京」・FX10のコンパイラの成果と今後の取組み」と題してご講演が行われた.
富士通FXシリーズのCPU性能を引き出すには,コンパイラを用いた最適化とアプリケーションのチューニングが重要である.コア性能はHPC-ACEの活用とソフトウェアパイプライニングの強化,1ノード性能は VISIMPACTで最適化を行うこと方針としている.
「京」,FX10から見えてきた課題として,1) ソフトウェアパイプライニングのためにはそもそも最内ループの回転数が必要であること,2) L1キャッシュの利用やユーザビリティという点においてチューニングが難しいこと,3) C++性能が悪いこと,を挙げられた.これら課題に対応するため,フルアンローリング等の最適化の適用,標準オプションの見直し,また翻訳リスト/メッセージの改善などを行う予定であるとあった.また次期FXに向けてリストアクセスを強化するという発表もあった.
一方,主流の言語はFortranと想定し,C++に関してはGNUの拡張仕様で書かれたプログラムのコンパイルができること(LinuxカーネルがMakeできるレベル)をこれまで目指して開発してきた.しかし,昨今の利用者の状況を見ると,大規模・複雑化するアプリをグループで開発する,OpenFOAMを利用する,という点からC++の利用が多くなっているのが現実である.C++にてCPU性能を引き出すためにはC++に特有の最適化が必要で,その実装状況が説明された.そして以前に比べてOpenFOAMの性能が大幅に改善しており(講演資料抜粋を参照),GNUコンパイラを上回る結果が得られてきていることを発表された.


写真
松尾裕一氏(宇宙航空研究開発機構)

昼の部の最後に,担当幹事 松尾裕一氏より挨拶があった.アーキテクチャが複雑化しアプリのチューニングが困難になっている中,SS研の活動を通して開発側と利用者側は近づいてきていることは望ましいと感想を述べられた.


写真
三浦謙一氏(富士通研究所)

会場の様子
懇談会 会場の様子

休憩を挟んで開かれた懇親会では「エクサ時代のプログラミングモデル 〜性能か,生産性か?〜」というテーマで,富士通研究所 三浦謙一氏をモデレータに,南里豪志氏(九大,MPI専門),佐藤三久氏(筑波大,PGAS等ハイレベル言語),今村俊幸氏(理研,ライブラリ開発),山中栄次氏(富士通,コンパイラベンダー)の4人をパネリストに迎えて行われた.
通信は概ね MPIに集約されてきている一方で,共有メモリ部分は混沌としており,一般ユーザがアプリをチューニングすること自体がほとんど不可能な状況となってきている.これはライブラリ開発に対しても同様で,今後はますますアーキテクチャが複雑化する中で性能を出すこと自体が困難になりつつある.ましてや,生産性も同時に確保するということに対してはよい考えは懇談会を通して現れず,プログラミングモデル・言語は混沌とする時代が続くのではないかという印象を受けた.

以上

SS研について

イベント情報

研究会活動

資料アーカイブ

情報発信

リンク集




鍵マークがついている情報の閲覧にはWebサイトIDが必要です。登録/変更ページへ
Webサイト閲覧時にIDが必要なページには、鍵マークが付いています(当CD-ROM内では不要)。
コンテンツの最新/詳細情報は、SS研Webサイトをご覧下さい。
All Rights Reserved, Copyright© サイエンティフィック・システム研究会 1996-2022