Communications of the ACM
Memory coherence in shared virtual memory systems
ACM Transactions on Computer Systems (TOCS)
Parallel programming in Split-C
Proceedings of the 1993 ACM/IEEE conference on Supercomputing
Parallel programming in OpenMP
Parallel programming in OpenMP
Journal of Parallel and Distributed Computing
Load Balancing in Parallel Computers: Theory and Practice
Load Balancing in Parallel Computers: Theory and Practice
Parallel Computer Architecture: A Hardware/Software Approach
Parallel Computer Architecture: A Hardware/Software Approach
Global arrays: a portable "shared-memory" programming model for distributed memory computers
Proceedings of the 1994 ACM/IEEE conference on Supercomputing
Distributed Shared Memory: Concepts and Systems
IEEE Parallel & Distributed Technology: Systems & Technology
Towards OpenMP Execution on Software Distributed Shared Memory Systems
ISHPC '02 Proceedings of the 4th International Symposium on High Performance Computing
TRAVELER: A Mobile Agent Based Infrastructure for Wide Area Parallel Computing
ASAMA '99 Proceedings of the First International Symposium on Agent Systems and Applications Third International Symposium on Mobile Agents
JESSICA2: A Distributed Java Virtual Machine with Transparent Thread Migration Support
CLUSTER '02 Proceedings of the IEEE International Conference on Cluster Computing
Scheduling Communication on an SMP Node Parallel Machine
HPCA '97 Proceedings of the 3rd IEEE Symposium on High-Performance Computer Architecture
Message Proxies for Efficient, Protected Communication on SMP Clusters
HPCA '97 Proceedings of the 3rd IEEE Symposium on High-Performance Computer Architecture
Strings: A High-Performance Distributed Shared Memory for Symmetrical Multiprocessor Clusters
HPDC '98 Proceedings of the 7th IEEE International Symposium on High Performance Distributed Computing
A Software Architecture for Global Address Space Communication on Clusters: Put/Get on Fast Messages
HPDC '98 Proceedings of the 7th IEEE International Symposium on High Performance Distributed Computing
Model Checking a Cache Coherence Protocol for a Java DSM Implementation
IPDPS '03 Proceedings of the 17th International Symposium on Parallel and Distributed Processing
MigThread: Thread Migration in DSM Systems
ICPPW '02 Proceedings of the 2002 International Conference on Parallel Processing Workshops
IBM Systems Journal
ParADE: An OpenMP Programming Environment for SMP Cluster Systems
Proceedings of the 2003 ACM/IEEE conference on Supercomputing
Brazos: a third generation DSM system
NT'97 Proceedings of the USENIX Windows NT Workshop on The USENIX Windows NT Workshop 1997
Stochastic modeling and analysis of hybrid mobility in reconfigurable distributed virtual machines
Journal of Parallel and Distributed Computing
Hi-index | 0.00 |
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.