1998 Fiscal Year Annual Research Report
同期チャネルとオブジェクトを持つ並列言語の分散共有記憶型並列計算機上の高効率実現
Project/Area Number |
08408008
|
Research Institution | The University of Tokyo |
Principal Investigator |
米澤 明憲 東京大学, 大学院・理学系研究科, 教授 (00133116)
|
Co-Investigator(Kenkyū-buntansha) |
田浦 健次朗 東京大学, 大学院・理学系研究科, 助手 (90282714)
増原 英彦 東京大学, 大学院・総合文化研究科, 助手 (40280937)
小林 直樹 東京大学, 大学院・理学系研究科, 講師 (00262155)
松岡 聡 東京工業大学, 大学院・情報理工学研究科, 助教授 (20221583)
|
Keywords | 並列プログラミング言語 / 並列オブジェクト / 同期チャネル / 型システム / デッドロック / 部分計算 / マルチスレッド / 分散GC |
Research Abstract |
並列計算のための実行時基盤ソフトウェアである,(1)細粒度スレッドライブラリ$stackthreadsおよび(2)共有/分散ヒープ用の保守的ゴミ集めライブラリ,を研究開発した. $stackthreadsは既存のスレッドライブラリ(Solarisスレッドなど)の上に多数の細粒度スレッドを実行時に生成し,実行することのできるライブラリであり,Cの関数呼び出し\+\10命令程度のオーバーヘッドでスレッドを生成する。共有ヒープ用保守的ゴミ集めライブラリは,複数のメモリ割り当て要求の並行処理により並列アプリケーションに十分なメモリ割り当て性能を提供し,並列マーク$&スイープによって,高速なゴミ集めを達成する.現在,Ultra Enterprise 10000上で64プロセッサ使用時に最大30倍程度の台数効果を達成している.分散ヒープ用ゴミ集めは,マーク$&スイープと遠隔参照カウントの両方式を実装し,興味深い性能評価結果を得ている.どのライブラリとも,無変更のgcc+コンパイラから利用可能であり,その意味で新しい「並列言語」ではない.そのため,既存のC/C++で書かれたプログラムに容易に組み込むことが可能である.また,高級言語処理系の実行時システムとして利用することで,処理系構築の手間が軽減されるとともに,こうして作られた複数の言語間に自然に相互運用性を提供する.
|
Research Products
(5 results)
-
[Publications] Atsushi Igarashi: "Foundations for Virtual Types" Informal Proceedings of the 6th international workshop on Foundations of Object-Oriented Languages (FOOL6). 1-15 (1999)
-
[Publications] Yoshihiro Oyama: "An Implementation and Performance Evaluation of Language with Fine-Grain Thread Creation on Shared Memory Parallel Computer" Proceedings of 1998 International Conference on Parallel and Distributed Computing and Systems (PDCS'98). 672-675 (1998)
-
[Publications] Naoki Kobayashi: "Quasi-Linear Types" Proceedings of ACM POPL'99. 29-42 (1999)
-
[Publications] Hidehiko Masuhara: "Design and Partial Evaluation of Meta-objects for a Concurrent Reflective Language" Proceedings of European Conference on Object-Oriented Programming({ECOOP'98}). 1445. 418-439 (1998)
-
[Publications] 増原 英彦: "Reasoningを容易にする並列自己反映言語のメタオブジェクトの設計" コンピュータソフトウェア. 15(4). 62-66 (1998)