研究課題/領域番号 |
26540031
|
研究機関 | 国立研究開発法人理化学研究所 |
研究代表者 |
橋本 政朋 国立研究開発法人理化学研究所, 計算科学研究機構, 研究員 (60357770)
|
研究期間 (年度) |
2014-04-01 – 2017-03-31
|
キーワード | アプリケーション性能チューニング / 大規模科学技術計算 / 計算カーネル特定 / 計算カーネル分類 |
研究実績の概要 |
今年度は主として、アプリケーション性能チューニングの対象となる計算カーネル(プログラム中のループ構造)を事例(プロジェクト)横断的に自動分類する手法の確立を目指し、分類例データセットの作成に取り組んだ。 スーパーコンピュータを用いた大規模科学技術計算においては、アプリケーションプログラムは通常、性能チューニングと呼ばれる工程を経て実行されるが、その工程の初期段階に当たるのが、計算カーネルの特定と分類である。性能チューニング全体もさることながら、この特定と分類という作業も専門家の経験と感に依存している。この作業をループから抽出した特徴ベクトルを用いて機械学習を適用することで自動分類する予備的実験を行った。本課題では今まで蓄積されたチューニング事例に基づき、作業の自動化を行うことを目指しているが、前年度において浮き彫りとなったように、事例の絶対数が不足している。そこで当初の計画にはなかった新たな試みとして、オープンなプロジェクトのリポジトリGitHubから約3000のFortranアプリケーションサンプルを採取し、その中から不適当なものを取り除いた後、無作為抽出した100のループ構造について、実際にスーパーコンピュータ京のための性能チューニングを行っている専門家に分類を行ってもらい、分類例データセットの作成を行うということに取り組んだ。この分類作業を依頼するにあたり、分類にどのような情報を参照するのかを専門家から聴取し、その情報を提示するためのツールの開発も新規に行った。本年度終了時点においては、未だ専門家による分類作業中であるが、得られた分類例データセットは、今後開発予定の自動分類システムを鍛えるために活用する予定である。 また、チューニング過程で生じるプログラム変種の進化系統的分類に関しては、抽象構文木の編集距離に基づく系統樹を生成し、専門家による妥当性の確認を行った。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
前年度に明らかとなったように、本課題において要となるチューニング事例が期待したほどは集まらないという事態に直面している。チューニングの履歴が残っていても、ソースコードの開示が不可能なため利用できないようなケースも実際にあった。そこで、この事例不足に対処するため、当初の計画には無かったが、オープンなプロジェクトから約3000のサンプルを採取し、数値計算プログラムでないなど、不適当なものを排除し、残った中から無作為にプログラム(ループ構造)を100個抽出し、そのプログラムに対して専門家に事例の生成を依頼するという試みを新たに行った。今年度においては計算カーネルの判定・分類を課題としていたため、その作業を性能チューニング専門家に依頼することとなったが、それに当たり、分類作業をスムーズに進めるために、専門家が実際作業を行う上でどのような情報を参照し、どのように判断してゆくのかを備に聴取し、それに基づき情報提示ツールを新たに開発することとなった。このツールは、Gitリポジトリを与えるだけで、そこに含まれるFortranプログラムの構文解析、RDF形式でのデータベース構築、情報閲覧ならびに分類結果入力のためのweb siteを自動的に行う。このように大量のサンプルの構文解析や情報提示ツールの開発という、予定外かつ困難な作業が増えたため進捗としては当然遅れることとなったが、前年度の進捗が想定より進んでいたことと、本課題において利用している構文解析器やその他ツールが大規模解析に対応して開発されていたため、それほど大きな遅れとはならなかったと考えられる。さらに、計画当初は予定していなかったチューニング専門家向けツールの開発を行うこととなり、結果的に順調な進展とした。
|
今後の研究の推進方策 |
計算カーネルの分類に関しては特徴ベクトルに基づく機械学習を予備的に行ったが、本年度終了時点において作成中である専門家による分類例データセットに基づき、与えられたソースコードから計算カーネルと思しき部分の特定と分類を行う手法の確立を行う。さらに余裕があればその機能を開発したツールに実装したい。例えば、予測した計算カーネルをハイライト提示することが考えられる。当初の計画には無かったことではあるが、研究成果に基づき実戦で専門家の使用に耐えうるツールが提供できるのであれば、その意義は大きいと考えられるため、状況によっては、最終年度に予定していた計画(性能チューニングにおけるソースコード書き換えの正当性の検証)を縮小し、ツールの拡充と公開に注力することも考えたい。
|
次年度使用額が生じた理由 |
想定外の課題に対応するため物品を購入したが想定より安価となった。
|
次年度使用額の使用計画 |
成果発表や学会・研究会における調査活動に充当したい。
|