2014 Fiscal Year Research-status Report
Project/Area Number |
26540031
|
Research Institution | The Institute of Physical and Chemical Research |
Principal Investigator |
橋本 政朋 独立行政法人理化学研究所, 計算科学研究機構, 研究員 (60357770)
|
Project Period (FY) |
2014-04-01 – 2017-03-31
|
Keywords | アプリケーション性能チューニング / 大規模科学技術計算 / 機械学習 / 最適化パターン予測 / ソースコード変更パターン同定 |
Outline of Annual Research Achievements |
今年度は主として、性能チューニング事例の収集とデータベースへの蓄積、並びに最適化パターン予測モデルの構築実験とを行った。事例の収集に関しては、理化学研究所 計算科学研究機構 運用技術部門 ソフトウェア技術チームの協力により、NICAMと呼ばれる気象シミュレータを含む幾つかの大規模科学技術計算アプリケーションの性能チューニング事例を収集することができた。それら事例には実際にスーパーコンピュータ「京」で実行するために施された性能チューニングの記録、具体的には試行錯誤の過程で生じたソースコードの変種とそれらに対応する性能プロファイリングデータが含まれている。それらをRDFと呼ばれるデータ形式に変換した後、実際にVirtuoso (OpenLink Software社)と呼ばれるソフトウェアを用いてデータベースを構築した。また今年度はさらに事例検索の応用実験として、機械学習を用いた最適化パターン予測モデル構築にも取り組んだ。これは、ソースコードの特徴ベクトルから、その性能を向上させると見込まれる(既知の)ソースコード変更パターンを予測するものである。このため、ソースコード変種間の詳細な差異を解析した結果を加えてデータベースを拡充し、それに対してさらに検索を行うことで変更パターンを同定した。ソースコードの特徴ベクトルとしては性能プロファイリングデータと配列変数の数等の幾つかのソースコードメトリクスを用いた。実行時間の短縮に成功したソースコード特徴ベクトルと変更パターンとの組合せをBR-kNNと呼ばれる機械学習アルゴリズムに与え、予測モデルを構築した。事例数がまだ十分とは言えず課題も残るものの、実際の事例から最適化パターン予測に至る手法に踏み込むことができたことは計画以上の進展で意義深い。以上の成果は国内口頭発表(招待講演)としてまとめ、さらに論文とし国際会議への投稿を行い採択された。
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
本研究が最終的に目指すのは、大規模科学技術計算において、プログラム性能チューニング専門家の知識をデータベース化し、それを検索することで様々なプログラムに対して性能向上のための助言を得ることのできるシステムを構築することである。それに対し今年度は性能チューニング事例の収集とソースコードを検索キーとするための正規化の試行を課題として設定していた。それに対し今年度実績として、実際の大規模科学技術計算アプリケーションの性能チューニング事例を幾つか収集し、データベースを構築することができた。さらに、当初想定していた手法とは若干異なるが、ソースコードやその実行プロファイルから特徴ベクトルを抽出することで、ソースコード正規化にも取り組んだ。さらに計画時には予定していなかったが、その特徴ベクトルと、細粒度差分解析から同定されたソースコード最適化パターンとを機械学習アルゴリズムに与えることで、事例横断的な最適化パターン予測モデルを構築する実験に取り組み、集まった事例の範囲ではあるものの、交差検証の結果からその有効性を見て取ることができた。以上により、「計画以上の進展」と評価したいところである。しかしながら、実際に研究を進めるにつれ、期待したほどはチューニング事例が集まらないという事態に直面している。チューニング事例は、目標の達成のために多ければ多いほど良いと考えられるため、これを勘案し今回は、「概ね順調な進展」と評価した。
|
Strategy for Future Research Activity |
今年度分計画に従い研究を進めてきたが、期待したほどはチューニング事例が集まらないという事態に直面している。これは、そもそもチューニング実施者がデータを全く残していない、あるいは、残っていたとしてもソースコードを開示できない等、幾つかの要因が考えられるが、今後研究を進める上で事例が集まらないという事態は好ましくない。そこで今後は、計画項目に加えて、例えば、自動チューニングシステム(予め指定した範囲でソースコード変種を自動生成、自動実行し、その中から最適なものを選ぶシステム)により生成されるプログラムを利用する、オープンソースの科学技術計算アプリケーション(性能チューニングのための変更を含んでいるとは限らない)のバージョン管理リポジトリを利用する、ソースコードではなくバイナリ実行ファイルを解析(一般にソースコードよりも解析が困難)する、等の対応により事例数を稼ぐことも検討したい。
|
Causes of Carryover |
物品購入について、想定額より安価に購入することができたものがある。旅費に関して、招待講演であったため、学会発表費用が先方持ちとなった場合がある。ソフトウェア購入に関して、オープンソース版が想定より高性能であったため購入を見合わせているものがある。その他費用に関して、年度末のため英文校閲が利用できなかった場合がある。
|
Expenditure Plan for Carryover Budget |
旅費に関して、成果発表だけでなく学会・研究会における調査活動の強化を行う。物品に関して、データバックアップ分も考慮して、追加ストレージの購入を行う。その他費用に関して、レンタルサーバやクラウドを利用したデータベースの公開を検討する。
|
Research Products
(2 results)