WEKO3
アイテム
DisC : ごみ集め機構を備えたC++の分散記憶並列拡張言語
https://ipsj.ixsq.nii.ac.jp/records/17023
https://ipsj.ixsq.nii.ac.jp/records/170239d92296c-bb49-4da2-8bdb-8043f955c499
| 名前 / ファイル | ライセンス | アクション |
|---|---|---|
|
|
Copyright (c) 1999 by the Information Processing Society of Japan
|
|
| オープンアクセス | ||
| Item type | Trans(1) | |||||||
|---|---|---|---|---|---|---|---|---|
| 公開日 | 1999-02-15 | |||||||
| タイトル | ||||||||
| タイトル | DisC : ごみ集め機構を備えたC++の分散記憶並列拡張言語 | |||||||
| タイトル | ||||||||
| 言語 | en | |||||||
| タイトル | DisC : An Extension of C++ for Distributed Memory Parallel Computing with Garbage Collection | |||||||
| 言語 | ||||||||
| 言語 | jpn | |||||||
| キーワード | ||||||||
| 主題Scheme | Other | |||||||
| 主題 | 通常論文 | |||||||
| 資源タイプ | ||||||||
| 資源タイプ識別子 | http://purl.org/coar/resource_type/c_6501 | |||||||
| 資源タイプ | journal article | |||||||
| 著者所属 | ||||||||
| 東京大学理学系研究科情報科学専攻 | ||||||||
| 著者所属 | ||||||||
| 東京大学理学系研究科情報科学専攻 | ||||||||
| 著者所属 | ||||||||
| 東京大学理学系研究科情報科学専攻 | ||||||||
| 著者所属 | ||||||||
| 東京大学理学系研究科情報科学専攻 | ||||||||
| 著者所属 | ||||||||
| 東京大学理学系研究科情報科学専攻 | ||||||||
| 著者所属(英) | ||||||||
| en | ||||||||
| Department of Information Science, Graduate School of Science, University of Tokyo | ||||||||
| 著者所属(英) | ||||||||
| en | ||||||||
| Department of Information Science, Graduate School of Science, University of Tokyo | ||||||||
| 著者所属(英) | ||||||||
| en | ||||||||
| Department of Information Science, Graduate School of Science, University of Tokyo | ||||||||
| 著者所属(英) | ||||||||
| en | ||||||||
| Department of Information Science, Graduate School of Science, University of Tokyo | ||||||||
| 著者所属(英) | ||||||||
| en | ||||||||
| Department of Information Science, Graduate School of Science, University of Tokyo | ||||||||
| 著者名 |
今井, 健男
山本, 泰宇
遠藤, 敏夫
田浦, 健次朗
米澤, 明憲
× 今井, 健男 山本, 泰宇 遠藤, 敏夫 田浦, 健次朗 米澤, 明憲
|
|||||||
| 著者名(英) |
Takeo, Imai
Hirotaka, Yamamoto
Toshio, Endo
Kenji, Taura
Akinori, Yonezawa
× Takeo, Imai Hirotaka, Yamamoto Toshio, Endo Kenji, Taura Akinori, Yonezawa
|
|||||||
| 論文抄録 | ||||||||
| 内容記述タイプ | Other | |||||||
| 内容記述 | 我々は C++に分散オブジェクトと分散ごみ集め(分散GC)機構を導入した 分散記憶型並列計算機向け拡張言語DisCを開発する. 我々はまず 分散オブジェクトをC/C++上で扱うためのライブラリ(GCライブラリ)を開発する. これは オブジェクトがどのプロセッサ上にあるのかの判定 あるいは遠隔参照の明示的な作成等 分散オブジェクトの基礎的な機能を実現する. そしてこのライブラリに対し 動的にゴミとなった分散オブジェクトを回収する分散ごみ集めの機能を導入する. このごみ集め機構は特定の通信ライブラリに依らないため 広範な環境での動作が可能である. 次に 上記のGCライブラリを暗黙的に呼び出してリモートメソッド呼び出し等の抽象度の高い機能を 構文仕様の変更なしに実現するフロントエンドを構築する. ここでは自己反映言語OpenC++を用いる事により実装を簡便にし 保守性と移植性を確保している. そして このフロントエンドとGCライブラリを既存のC++処理系に組み合わせる事で 既存の処理系に手を加えない形でのC++の拡張を行なう. プログラマは 通常のC++プログラムでのオブジェクトの操作と同様の記述を用いて 分散オブジェクトの機能を暗黙的に使用できる. DisCは 分散GC機構を備えている他に 1)構文仕様の変更が一切なく 通常のC++と同様の記述で分散オブジェクト・プログラミングができ また 2)様々な計算機環境への高い移植性を持つ という特長がある. これにより 分散記憶型計算機上で動くプログラムの開発と保守 及び異なる分散記憶計算機間でのソフトウエア資産の共有が容易になる. 本稿では 上記ライブラリ及び言語処理系の設計及び実装手法について述べ さらに応用プログラムを作成し 実際に分散記憶型計算機上で動かして拡張言語の性能を評価する. | |||||||
| 論文抄録(英) | ||||||||
| 内容記述タイプ | Other | |||||||
| 内容記述 | We develop DisC, an extension of C++ that supports distributed objects and distributed garbage collection on distributed memory parallel computers. We first develop a library for C/C++, which includes basic functions to manage distributed objects. This library includes a function that tells whether an object is local or remote, functions that explicitly make remote references. It also provides a distributed garbage collection facility that reclaims objects that are no longer used. The facility is portable because of its independency from communication libraries. We also develop an front-end processor that implicitly invokes functions or the library described above, and brings higher abstractions such as remote method invocation, with no changes to the syntax of C++. We use a reflective language Open C++ to implement the processor, we achieve simple implementation and acquire its portability and maintainability. Programmers can invoke methods of distributed objects in our language as if they were normal C++ objects. Besides the distributed garbage collection facility, there are two major advantages in our language: 1)its extension involves no syntactic changes and the users can write programs with distributed objects as if they write programs in original C++, and 2) it is highly portable to various distributed parallel computers or environments, which have diverse interfaces for inter-processor communication. These advantages makes it easier to develop or maintain parallel software that are portable across various distributed-memory parallel environments. We also evaluate our extended C++ with some experiments using several parallel applications. | |||||||
| 書誌レコードID | ||||||||
| 収録物識別子タイプ | NCID | |||||||
| 収録物識別子 | AA11464814 | |||||||
| 書誌情報 |
情報処理学会論文誌プログラミング(PRO) 巻 40, 号 SIG01(PRO2), p. 42-56, 発行日 1999-02-15 |
|||||||
| ISSN | ||||||||
| 収録物識別子タイプ | ISSN | |||||||
| 収録物識別子 | 1882-7802 | |||||||
| 出版者 | ||||||||
| 言語 | ja | |||||||
| 出版者 | 情報処理学会 | |||||||