%%% 氏名・所属(和文および英文,発表者に○印をつけて下さい) % 和文氏名 \author{○高橋 慧\affiref{u-tokyo} \and 田浦 健次朗\affiref{u-tokyo} \and 近山 隆\affiref{u-tokyo} } % 英文氏名 \author{○Kei Takahashi\affiref{u-tokyo} \and Kenjiro Taura\affiref{u-tokyo} \and Takashi Chikayama\affiref{u-tokyo} } \affilabel{u-tokyo}{東京大学\\ The University of Tokyo} %%% 代表者連絡先(氏名,住所,電話,Fax,電子メールアドレス) \contact{ 高橋 慧 〒113-8656 東京都文京区本郷7-3-1\\ 東京大学大学院 情報理工学系研究科 電子情報学専攻\\ TEL: (03)5841-6398\qquad FAX: (03)5841-6398\\ email: kay@logos.ic.i.u-tokyo.ac.jp} } %%% タイトル(和文論文の場合は和文と英文の両方) % 和文タイトル \title{Distributed Aggregate with Migration} % 英文タイトル \etitle{Design and Implementation of a New Programming Language} \begin{abstract} グリッド環境においては、与えられた資源を最大限活用するためにプロセッサ 数の増減に対応したいという要請がある。 現状では多くの並列プログラムはメッセージパッシングを用いて記述されてい るが、これは多くの場合通信相手の指定にプロセッサ番号を用いるため、プロ セッサ数増減に対応するにはデータとプロセッサ番号の対応をプログラマが 管理する必要があり、記述は難しい。 分散オブジェクトではデータの識別にプロセッサではなくオブジェクトを用い るので、プロセッサ増減に対応したプログラムの記述が簡単になる。しかし、 分散配列などプロセッサ間にまたがる大きなデータを扱う場合、分散オブジェ クトではオブジェクト単位でしかデータを扱えないため、簡単には効率の良い 記述ができない。 本発表では、大きな配列などインデックスにより識別される集合を用いる際、 プロセッサ数の変化に対応した並列プログラムを簡単に記述できる、「分散集 合オブジェクト」を提案する。これにより、プロセッサ間に断片として分散し ているデータが、プログラマからは一つのオブジェクトとして見えるようにな る。メソッドの呼び出しはインデックスの範囲を指定して行うため、プログラ ムはデータの配分を意識せずに記述できる。 実装においては要素と断片の対応を分散保持し、メッセージの集中を防いで性 能を損なわないようにした。 我々はこの分散集合オブジェクトを実装し、その下でアプリケーションを記述 して動作の確認と性能評価を行った。 \end{abstract} \begin{eabstract} In Grid environment, it is required to support changes of the number of processors that participates in the computation in order to utilize available resources efficiently. Presently, most parallel programs are written with message passing models; but when the number of processors changes a programmer must maintain a conversion table of data and processors on his own. With distributed object models, programs can support changes of the number of processors by migration of objects. It is, however, still hard to implement distributed large data structures, such as distributed array, efficiently. We propose "distributed aggregate model" as an extension of distributed object model. It handles a data structure identified with indices, like distributed array. In our distributed aggregate model, each object can be distributed among processors as fractions, but looks like one object to programmers. So a programmer can write a program without worrying about its distribution. Every processor has the conversion table of indices and processors, so messages do not concentrate on one processor. We implemented this framework, wrote a programming example of partial differential equation. The program operated correctly when the number of processors changes dynamically, and we evaluated its performance. \end{eabstract} %%% 論文誌投稿を希望の有無 (どちらか残してください) % 希望しない %%% オリジナル論文とサーベイ論文の種別指定 (どちらか残してください) % オリジナル論文