研究課題/領域番号 |
24700026
|
研究機関 | 東京工業大学 |
研究代表者 |
荒堀 喜貴 東京工業大学, 情報理工学(系)研究科, 助教 (50613460)
|
キーワード | プログラム解析 / 動的解析 / バグ検出 / 競合 / スレッド / 割込み |
研究概要 |
本研究は,組込みソフトウェアやネットワークプログラムなど割込み処理を多用するプログラムの信頼性及び開発効率の向上に貢献するために,割込み処理に伴う競合状態を高精度かつ高効率に検出する動的手法の確立を目的とする.そのためのアプローチとして,スレッド競合の動的検出手法各種を割込み競合の検出が可能となるよう拡張し,拡張した各種の検出手法の精度・効率の特性を分析し,割込み競合検出手法の高精度化または高効率化に有効な解析を特定・融合する.このアプローチに沿って研究を実施し,本年度は主に次の研究成果を得た. 1.割込み競合検出の特性分析用ベンチマークの作成 昨年度実現した各種の割込み競合解析器の精度・効率の分析に用いる多種多様なベンチマークを作成した.このベンチマークの作成では,実用プログラムの開発プロジェクトのバグ修正履歴やCERT等による脆弱性報告を調べ,現実の開発において問題となっている割込み競合の種類や重要度等の情報を反映させることで,妥当なベンチマークとなるよう配慮した.このベンチマークの作成により,各種の競合検出手法の精度・効率を計測し比較することが可能となった. 2.各種の割込み競合検出器の精度・効率の特性分析 次に,昨年度実現した各種の割込み競合検出器を上述のベンチマークに適用し,割込み競合検出の精度・効率を計測した.検出精度として,誤検出率と検出漏れ率を計測し,検出効率として,競合検査による実行時間及びメモリ使用量の増加率を計測した.その結果,割込み競合検出において,(1)happens-before解析は誤検出が少ないものの検出漏れが極めて多い,(2)lockset解析は適切な拡張のもとでは誤検出が少ないが検出漏れも多い,(3)ハイブリッド解析は精度改善に有効でない等のスレッド競合検出の文脈とは異なる特性が判明した.更なる高精度化・高効率化手法の展望は研究会等で発表した.
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
研究実施計画における本年度の達成目標は,(1)割込み競合検出法の精度・効率分析用ベンチマークの作成,(2)前年度に開発した各種の割込み競合検出器のベンチマークへの適用による精度・効率の特性分析,(3)割込み競合検出の高精度化または高効率化に有効な解析の特定及び融合である.以下に示す通り,当初の計画の範囲内でこの目標はおおむね順調に達成できた.但し,研究を遂行する中で当初の計画より高精度・高効率な割込み競合検出法を実現できる見通しが立ったため,研究期間を延長してこれを実現し精度・効率を評価した上で最終的な研究成果とする計画に変更した. 1.割込み競合検出法の精度・効率分析用ベンチマークの作成:実用プログラムの開発プロジェクトのバグ修正履歴やCERT等による脆弱性報告を調べ,現実の開発において問題となっている重要な割込み競合を網羅するベンチマークを作成した.割込み競合検出の精度(誤検出率,検出漏れ率)を評価するベンチマークとして,多種多様な現実的割込み競合をモデル化した小規模なユニットテスト群を作成した.また,効率(競合検査による実行/メモリオーバヘッド)を評価するベンチマークとして,既知の割込み競合を含む大規模実用プログラムの性能測定環境を構築した. 2.各種の割込み競合検出法の精度・効率の分析:前年度開発した各種の割込み競合検出法をベンチマークに適用することで精度・効率の特性を明らかにした.当初の予想通り,各種のスレッド競合検出法は割込み競合検出用途に拡張した場合に従来とは異なる特性を示すという結果を得ることができた. 3.割込み競合検出の高精度化・高効率化に有効な解析の特定・融合:上記2の特性分析に基づき,割込み競合検出の高精度化・高効率化に有効な解析法の特定・融合を試みた.有効な解析法は特定できたが融合による顕著な効果は得られなかった.
|
今後の研究の推進方策 |
延長した研究期間内に割込み競合検出手法の更なる高精度化・高効率化を実現し評価することを目的とし,以下の方策で研究を推進する. 1.割込み競合検出に特有の高精度化手法の実現と評価 割込み競合検出に特有の高精度化手法として,多重割込みの予測解析手法を実現する.スレッド処理の文脈では多重割込みに対応する概念が存在しないため,従来のスレッド競合検出法を単純に拡張し融合するだけでは多重割込みに伴う競合に対処できないことが本年度の分析により明らかになった.そこで,延長した研究期間内に,多重割込みに伴う競合の検出漏れを大幅に低減する予測解析手法を実現する.また,予測解析の導入による精度向上効果をベンチマークにより定量的に評価する. 2.割込み競合検出に特有の高効率化手法の実現と評価 割込み競合検出に特有の高効率化手法として,競合検査コードのマルチコアプロセッサ上での並列実行法を実現する.スレッド競合検出の文脈で従来使用されてきた静的解析に基づく冗長検査除去に加え,(冗長でない)検査コードの実行自体を並列化することにより割込み競合検査の大幅な効率向上を実現する.また,競合検査コードの並列化による効率向上効果をベンチマークにより定量的に評価する.
|
次年度の研究費の使用計画 |
本年度に,スレッド競合検出法各種(lockset解析,happens-before解析,サンプリング,静的解析)の拡張および融合によって得た各種の割込み競合検出法の精度・効率の分析を進める過程で,割込み処理に特有の高精度化(多重割込みの予測解析)と高効率化(競合検査並列化)の発案に至り,研究期間を延長しこれらの実現と評価を行う計画に変更した.研究期間延長に伴い,成果発表にかかる費用を次年度の研究費として使用する必要が生じた. 上記の研究計画変更に伴い,割込み競合検出に特有の高精度化(多重割込み予測解析)と高効率化(並列競合解析)の実現及びその効果の定量的評価を次年度の研究成果として国際会議で発表(高精度化,高効率化及びこれまでの成果との統合の総評価について各1件,計3件)することとし,次年度の研究費はその費用に充てる計画である.
|