大阪大学 大学院情報科学研究科 コンピュータサイエンス専攻 並列処理工学講座 萩原研究室 [English]
ホーム -> 研究内容 -> 並列プログラムの性能解析に関する研究
構成員 研究内容 発表論文 研究生活 所在地 ローカル

並列プログラムの性能解析に関する研究

並列計算を実現するための手法として,計算機間でメッセージをやりとりしな がら計算を進める手法がよく用いられます.このようなメッセージ通信型のプ ログラムでは,ローカル計算に比べて通信に要する時間が大きく,タイミング よく通信をやりとりしたり,通信量を削減するための工夫が必要です.この作 業を支援することを目的として,並列プログラムの性能解析を支援するための 基礎理論やツールなどを研究しています.

同期コストを解析するための通信モデル

メッセージ通信型の並列プログラムでは,標準通信仕様MPIをC言語などで記述 された逐次プログラムに埋め込むことが大半です.多くのMPI実装では,内部 でプロトコルを使い分けているのですが,ネットワークの高速化に伴い,この 使い分けが性能に与える影響が大きいと考え,その部分を著名なLogPモデルに 拡張として組み込みました.また,実際の環境において,各性能パラメータを 計測するための手法を提示し,その誤差が10%程度に収まることを幾つかの実 行環境で示しました.この成果は,並列プログラミングの分野で権威のある国 際会議PPoPPで発表しました.

並列プログラムの性能予測

一般に,並列計算機は高価であるため,ある並列計算機を想定してあらかじめ プログラムの性能を予測することは重要です.同様に,プログラムに対してど のような修正を加えれば最も性能を引き出せるのかを予測できれば,チューニ ング作業を支援できます.このような性能予測に関する研究をMPIプログラム を対象として遂行しました.

イベント解析に基づくツール

メッセージ通信プログラムを記述するときの課題は,正しく動作させること, そのうえで性能を引き出すことです.これらの作業を支援することを目的とし て,イベントベースのデバッガやそのためのイベント記録手法を開発しました. 前者は,イベント間の依存を解析することにより,雪崩式に発生するプロセス failureのうち,雪崩を引き起こす原因を持つfailureを絞り込みます.この絞 り込みは,台数が多い計算環境において特に有効です.後者は,主記憶に収ま らないような大規模なログを,スワップなどを回避しながら可能な限り正確な タイムスタンプ付きのログを生成できます.