Distributed Shared Arrays: An Integration of Message Passing and Multithreading on SMP Clusters

  • Authors:
  • Ramzi Basharahil;Brian Wims;Cheng-Zhong Xu;Song Fu

  • Affiliations:
  • Department of Electrical and Computer Engineering, Wayne State University, USA 48202;Department of Electrical and Computer Engineering, Wayne State University, USA 48202;Department of Electrical and Computer Engineering, Wayne State University, USA 48202;Department of Electrical and Computer Engineering, Wayne State University, USA 48202

  • Venue:
  • The Journal of Supercomputing
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents a Distributed Shared Array runtime system to support Java-compliant multithreaded programming on clusters of symmetric multiprocessors (SMPs). As a hybrid of message passing and shared address space programming models, the DSA programming model allows programmers to explicitly control data distribution so as to take advantage of the deep memory hierarchy, while relieving them from error-prone orchestration of communication and synchronization at run-time. The DSA system is developed as an integral component of mobility support middleware for grid computing so that DSA-based virtual machines can be reconfigured to adapt to the varying resource supplies or demand over the course of a computation. The DSA runtime system also features a directory-based cache coherence protocol in support of replication of user-defined sharing granularity and a communication proxy mechanism for reducing network contention. We demonstrate the programmability of the model in a number of parallel applications and evaluate its performance on a cluster of SMP servers, in particular, the impact of the coherence granularity.