研究課題/領域番号 |
19K11900
|
研究機関 | 東京工業大学 |
研究代表者 |
荒堀 喜貴 東京工業大学, 情報理工学院, 助教 (50613460)
|
研究分担者 |
内田 公太 東京工業大学, 情報理工学院, 特任助教 (90836701)
|
研究期間 (年度) |
2019-04-01 – 2025-03-31
|
キーワード | 分散並行バグ / 分散並行処理 / サニタイザ / 動的解析 / 静的解析 / プログラム解析 |
研究実績の概要 |
本研究は、分散並行バグを正確かつ高速に検査する分散並行サニタイザの実現を目的とする。サニタイザ(Sanitizer)とは、プログラムの実行状態を観測して 得られるデータに基づきバグや脆弱性を検査する技術であり、ソフトウェアの信頼性やセキュリティの向上に役立つ。しかし、従来のサニタイザは、分散環境で 複数の処理が並行動作するプログラムに固有の非決定的バグ(分散並行バグ)を正確かつ高速に検査できない。本研究はこの問題の解決を目指す。 本年度は、前年度までに進めていた分散並行バグ検査メタデータ並列処理の最適化手法の設計と実装を更に進めた。 次に、この最適化実装に基づく分散並行バグ検査並列メタデータ処理を、前年度に拡充したベンチマークプログラムに適用する実験を行い、最適化による検査効率の向上を計測し評価した。 更に、これら最適化手法の実装と実験の結果に基づき、分散並行バグ検査並列実行の更なる効率化手法の設計と実装を進めた。具体的には、検査対象プログラムの複数スレッド間のデータの流れの静的解析に基づき、スレッド数が増加しても実行時検査のオーバヘッドを低く抑える効率化手法と、保守的な静的解析の過大近似に起因する最適化機会損失を回避するための準パス依存解析手法を検討しプロトタイプ実装と予備実験を進めた。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
3: やや遅れている
理由
本年度の研究実施計画は、(1)まず、前年度に設計した分散並行バグ検査メタデータ並列処理の最適化手法の実装の完成度を高め、(2)次に、この最適化実装に基づく分散並行バグ検査並列メタデータ処理を、前年度までに拡充したベンチマークプログラムに適用する実験を行い、最適化による検査効率の向上を計測し評価し、(3)更に、これら最適化手法の実装と実験の結果に基づき、分散並行バグ検査並列実行の更なる効率化手法の実現と評価を行うことであった。 計画(1)と(2)についてはおおむね完了したが、計画(3)については当初予定していた最適化手法の実装と評価の結果から更なる最適化の課題が明らかになり、これらの課題を解決するための更なる最適化手法(研究実績の概要で述べたスレッド間データフロー解析と準パス依存解析)の設計とプロトタイプ実装と予備実験を進めたものの、これらは途中段階にある。そのため、全体として本研究はやや遅れていると考える。
|
今後の研究の推進方策 |
本研究は今後、次の計画で推進する。まず、本年度に途中まで進めた分散並行バグ検査の更なる最適化手法である「スレッド間データフロー解析」と「準パス依存解析」の設計と実装の完成度を高める。次に、これらの最適化手法の実装に基づく分散並行バグ検査器を、前年度までに拡充したベンチマークプログラムに適用する実験を行い、更なる最適化による検査効率の向上と検査精度の変化を計測し評価する。この評価の結果に基づき、新たな最適化の課題が判明した場合は、その課題に対処する手法も設計・実装・評価する。
|