Item type |
Trans(1) |
公開日 |
2001-02-15 |
タイトル |
|
|
タイトル |
排他的なメソッドの並行な呼び出しを融合する機構を持つ言語 |
タイトル |
|
|
言語 |
en |
|
タイトル |
Fusion of Concurrent Invocations of Exclusive Methods |
言語 |
|
|
言語 |
jpn |
キーワード |
|
|
主題Scheme |
Other |
|
主題 |
通常論文(論文賞受賞) |
資源タイプ |
|
|
資源タイプ識別子 |
http://purl.org/coar/resource_type/c_6501 |
|
資源タイプ |
journal article |
著者所属 |
|
|
|
東京大学大学院理学系研究科情報科学専攻/日本学術振興会特別研究員 |
著者所属 |
|
|
|
東京大学大学院理学系研究科情報科学専攻 |
著者所属 |
|
|
|
東京大学大学院理学系研究科情報科学専攻 |
著者所属(英) |
|
|
|
en |
|
|
Department of Information Science, Faculty of Science, University of Tokyo/JSPS Research Fellow |
著者所属(英) |
|
|
|
en |
|
|
Department of Information Science, Faculty of Science, University of Tokyo |
著者所属(英) |
|
|
|
en |
|
|
Department of Information Science, Faculty of Science, University of Tokyo |
著者名 |
大山恵弘
田浦, 健次朗
米澤, 明憲
|
著者名(英) |
Yoshihiro, Oyama
Kenjiro, Taura
Akinori, Yonezawa
|
論文抄録 |
|
|
内容記述タイプ |
Other |
|
内容記述 |
並行拡張されたオブジェクト指向言語に,排他的なメソッドの複数の並行な呼び出しを融合する機構を導入する方法を示す.通常,排他的なメソッドの複数の並行な呼び出しは逐次化される.我々は逐次化された結果として実行待ち状態にある複数の排他的なメソッドの呼び出しを融合する.具体的には,それらの呼び出しを,たとえば単一の呼び出しなどのより高速な処理に動的に切り替える.たとえば,カウンタオブジェクトに対する,1を加算するメソッドの呼び出しと,2を加算するメソッドの呼び出しを融合して,3を加算するメソッドのみを呼び出す.どんな呼び出しの組をどんな処理に融合するかの仕様(融合規則)はプログラマが記述する.本機構は,排他的なメソッドの呼び出しが長時間実行待ち状態になるオブジェクト(同期ボトルネック)での効率化に特に役立つ.我々は本機構を持つ言語の処理系を実装し,共有メモリ並列計算機Sun Enterprise 10000を用いて実験を行った.その実験では,本機構が同期ボトルネックを持つプログラムの性能を大きく向上させた. |
論文抄録(英) |
|
|
内容記述タイプ |
Other |
|
内容記述 |
This paper describes a mechanism for ``fusing'' concurrent invocations of exclusive methods. The target of our work is object-oriented languages with concurrent extensions. In such languages, invocations of exclusive methods are serialized: only one invocation is executed at one time and the others must wait for their turn. The proposed mechanism fuses multiple waiting invocations to a cheaper operation, such as a single invocation. For example, when an add-1 method and an add-2 method are waiting on a counter object, we replace these methods with an add-3 method. Programmers describe fusion rules, which specify method invocations that can be fused and an operation that is used to substitute for the invocations. The mechanism works effectively in the execution of synchronization bottlenecks, which are objects on which exclusive methods wait a long time for their turn. We implemented a language that has the mechanism and tested the usefulness of the mechanism through experiments on a symmetric multiprocessor, the Sun Enterprise 10000. We confirmed that the mechanism made programs with synchronization bottlenecks significantly faster. |
書誌レコードID |
|
|
収録物識別子タイプ |
NCID |
|
収録物識別子 |
AA11464814 |
書誌情報 |
情報処理学会論文誌プログラミング(PRO)
巻 42,
号 SIG02(PRO9),
p. 13-25,
発行日 2001-02-15
|
ISSN |
|
|
収録物識別子タイプ |
ISSN |
|
収録物識別子 |
1882-7802 |
出版者 |
|
|
言語 |
ja |
|
出版者 |
情報処理学会 |