DMI:計算資源の動的な参加/脱退をサポートする大規模分散共有メモリインタフェース

Bibliographic Information

Other Title
  • DMI : ケイサン シゲン ノ ドウテキ ナ サンカ/ダッタイ オ サポート スル ダイキボ ブンサン キョウユウ メモリインタフェース
  • DMI: A Large Distributed Shared Memory Interface Supporting Dynamically Joining/Leaving Computational Resources

Search this article

Description

計算環境の大規模化と並列分散アプリケーションの高度化が加速している現在,大規模な並列分散環境をサポート可能な並列分散処理系への要請が高まっている.大規模環境をサポートするうえでは,計算資源の動的な参加/脱退を越えて 1 つの並列計算を継続実行できるような枠組みが欠かせない.特に,より多様で広範な並列分散アプリケーションを支援するためには,クライアント・サーバ方式のように計算資源どうしが疎に結び付いて動作するような枠組みではなく,多数の計算資源がもっと密に協調して動作するようなアプリケーション領域に対しても,動的な参加/脱退を柔軟にサポートできるような枠組みが求められている.以上をふまえて本研究では,動的な参加/脱退をサポートする大規模分散共有メモリの処理系として DMI (Distributed Memory Interface) を提案して実装し,評価する.DMI では,動的な参加/脱退を可能とするコンシステンシプロトコルを新たに提案するとともに,動的な参加/脱退を実現するプログラムを容易に記述可能な pthread 型の柔軟なプログラミングインタフェースを整備する.さらに,DMI では,ユーザ指定の任意のサイズによるコンシステンシ維持,非同期 read/write,マルチモード read/write など,分散共有メモリの性能を改善するための明示的で細粒度な最適化手段を提供する.評価の結果,DMI は,ヤコビ反復法による熱伝導方程式の求解のように,単純なクライアント・サーバ方式では記述できず,多数の計算資源が密に協調しながら動作するアプリケーションに対しても,計算資源の参加/脱退を越えた計算の継続実行をサポートし,参加/脱退に相応して動的に並列度を増減できることを確認した.また,pthread プログラムとの記述上の類似性や最適化手段の有効性も確認した.

With increasing scale of computational environments and greater sophistication of parallel and distributed applications, there have been increasing demands for parallel and distributed frameworks supporting large scale computational environments. In large scale environments, frameworks are required which can execute one parallel computation continuously beyond dynamic joining/leaving of computational resources. Particularly it is not enough for frameworks to support only loosely coupled applications using a client-server model. Instead, frameworks should accommodate broader range of applications in which many resources can work in a tightly coupled manner. With these backgrounds, we propose, implement and evaluate Distributed Memory Interface, or DMI, a large distributed shared memory framework supporting dynamic joining/leaving of computational resources. DMI not only implements an original protocol for the memory consistency which enables dynamic joining/leaving, DMI also provides pthread-like flexible programming interfaces with which we can easily develop programs supporting dynamic joining/leaving. Furthermore DMI provides explicit and fine-grained optimization methods to improve a performance of a distributed shared memory, for example, consistency maintenance based on a user-specified granularity, asynchronous read/write and multi-mode read/write. Our performance evaluation confirmed that DMI can support a continuous computation beyond dynamic joining/leaving of resources and can dynamically increase/decrease the effective speedup according to the joining/leaving, even for tightly coupled applications which cannot be developed in a simple client-server model, such as Jacobi method for solving a partial differential equation. We also confirmed an expressive similarity with pthread programs and an effectiveness of proposed optimization methods.

Journal

Citations (1)*help

See more

Related Projects

See more

Keywords

Details 詳細情報について

Report a problem

Back to top