研究分担者 |
田浦 健次朗 東京大学, 大学院・理学系研究科, 助手 (90282714)
増原 英彦 東京大学, 大学院・総合文化研究科, 助手 (40280937)
小林 直樹 東京大学, 大学院・理学系研究科, 講師 (00262155)
松岡 聡 東京工業大学, 大学院・情報理工学研究科, 助教授 (20221583)
|
研究概要 |
並列計算のための実行時基盤ソフトウェアである,(1)細粒度スレッドライブラリ$stackthreadsおよび(2)共有/分散ヒープ用の保守的ゴミ集めライブラリ,を研究開発した. $stackthreadsは既存のスレッドライブラリ(Solarisスレッドなど)の上に多数の細粒度スレッドを実行時に生成し,実行することのできるライブラリであり,Cの関数呼び出し\+\10命令程度のオーバーヘッドでスレッドを生成する。共有ヒープ用保守的ゴミ集めライブラリは,複数のメモリ割り当て要求の並行処理により並列アプリケーションに十分なメモリ割り当て性能を提供し,並列マーク$&スイープによって,高速なゴミ集めを達成する.現在,Ultra Enterprise 10000上で64プロセッサ使用時に最大30倍程度の台数効果を達成している.分散ヒープ用ゴミ集めは,マーク$&スイープと遠隔参照カウントの両方式を実装し,興味深い性能評価結果を得ている.どのライブラリとも,無変更のgcc+コンパイラから利用可能であり,その意味で新しい「並列言語」ではない.そのため,既存のC/C++で書かれたプログラムに容易に組み込むことが可能である.また,高級言語処理系の実行時システムとして利用することで,処理系構築の手間が軽減されるとともに,こうして作られた複数の言語間に自然に相互運用性を提供する.
|