研究課題/領域番号 |
15K12033
|
研究機関 | 東京大学 |
研究代表者 |
須田 礼仁 東京大学, 情報理工学(系)研究科, 教授 (40251392)
|
研究分担者 |
滝沢 寛之 東北大学, 情報科学研究科, 准教授 (70323996)
|
研究期間 (年度) |
2015-04-01 – 2018-03-31
|
キーワード | 自動チューニング / 事後機能付加 / コード変換 / 可変性の発見 / 機械学習 / 疎行列計算 / 動的負荷分散 |
研究実績の概要 |
本研究では、事前に自動チューニングの仕組みが組み込まれていないソフトウェアに事後的に自動チューニング機能を付加する手法の開発を目指している。平成27年度には、滝沢らが開発している xevolver を利用して、別途生成してあったコードに事後的に最適化を施すことを試みた。ここではもととなるコードは自動生成で得られたものであり、人間の目から見ると無駄な演算や無駄な初期化が存在した。ここから無駄な演算と無駄な初期化を消去する変換を xevolver で実装することができた。 今回の事例の場合、もとになるコードは自動生成によって得られたものであり、一定のフォーマットで書かれているために、変換ルールは比較的簡単なもの(xevtgen で 250 行ほど)で済んだ。これに対し人間が書き込んだコードは定型的でないことが予想され、変換ルールの定義や適用条件の確認が複雑になることが想定される。 また、可変性の発見が可能かについて,その手法,限界に関する理論的考察を行った.他に,もともと自由度の高い可変性と,十分高度な自動化の組み合せにより,事実上,新たな可変性が生まれるようにする手法を考察した. また、機械学習技術の自動チューニングへの応用を試みた。入力行列によって適切な実装方法が異なる行列計算を対象とし、行列が与えられたときに適切な実装方法を機械学習を用いて選択する研究を行った。その結果、最適な実装の選択の難しいものの、準最適な実装を選択することはできており、高い性能を達成できることが示された。 プログラムの並列実行における動的負荷分散は,ユーザが組み込むことなしにシステム化可能なことが多く,計算の正しさを保ちつつ適応的である.平成27年度は,実行状況に対する判断のヒントをユーザが追加可能な枠組みを考案し,より的確で,正しくかつ適応的な振る舞いが可能であることを確認した.
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
本研究の中心的課題である、既存のコードへの可変性の導入という観点では、一定の成果が得られたが、これは自動生成されたコードであった。人間が書いたコードの実情を分析する部分が遅れている。Xevoler を用いた可変性の導入も、予想よりは作業量がかかることがわかり、量をこなすということができていない。他方で可変性の発見に関する知見を得たり、自動化の容易な機械学習の自動チューニングへの応用など、関連する重要な知見は得られており、これらを総合すると、研究活動としては計画していた水準に達していると考えている。
|
今後の研究の推進方策 |
平成28年度には、自動チューニング機構の事後的な付加、および適切な可変性の導入のプロトタイプ実装を最優先課題として取り組む。また、人間が書いたコードの分析を行う必要がある。人間が書き込んだコードは定型的でないことが予想され、変換ルールの定義や適用条件の確認が複雑になることが想定される。このため手作業または変換ルールなどにより、定型的なコードにリファクタリングする必要性があると考えられる。また、コードに対して有効な変換を推定したり、変換によってコードの意味が変わらないことを確認するため、コードのパターンを判別することにも取り組むが、これは平成29年度にかけての課題とする予定である。
|
次年度使用額が生じた理由 |
挑戦的な課題を設定したため、取り組みのスタートアップに時間がかかってしまい、成果が出るのが年度の後半に集中することになった。このため成果の発表が翌年度にまわったものが多く、当初予定よりも支出が少なくなった。
|
次年度使用額の使用計画 |
平成27年度の成果を積極的に国内外の学会等で発表することで、旅費・学会参加費等に使用する。また、関連する研究を行っている海外の研究者を招聘または訪問することで研究を加速し、適切に使用する予定である。
|