研究概要 |
我々が研究対象としている言語はデータフロー概念にもとづく言語であり,今年度は,以下のような点に焦点をおいて研究を行なった: ・高い記述力を支援するため配列などの構造体処理においても細粒度のnon-strictなデータ操作が可能だが,それにより実装時は高い頻度で細粒度通信が生じる。実際の並列計算機の通信コストはかなり高く、そのオーバヘッドの削減は大きな課題である。 ・細粒度レベルでの非同期実行を伴うため,プログラムの静的な解析には限界があり,動的な振舞いを把握するためのツールが非常に有効である。 上記に対し以下のような問題解決法をとった: ・実装においては,マルチスレッド並列実行モデルにもとづく抽象計算機を設定したうえで,実対象並列計算機のアーキテクチャ依存部と非依存部を分けて考えた。適切な中間言語を設定し,最適手法を適用するレベルを切分けて考えた。また,細粒度通信のオーバヘッド削減のため,message aggregation や coalescing などの手法の適用の検討を行なう。この時も構造体 non-strict性という独自の特徴に配慮した。 ・(株)富士通研の並列処理センターで開放されている分散メモリ型並列計算機AP1000用い,上記の研究結果を盛り込んだ試験実装の予備評価を行なった。その際,予備評価システムにプロファイル・ルーチンを埋め込み,実行プロファイルを採集した。得られたプロファイル・データをPICLフォーマットに変換するトランスレータを作成し,プロファイル・データをParaGraphを用いて視覚的に再現することを可能とした。
|