MSA: Multiphase specifically shared arrays

Jayant DeSouza, Laxmikant V Kale

Research output: Contribution to journalConference article


Shared address space (SAS) parallel programming models have faced difficulty scaling to large number of processors. Further, although in some cases SAS programs are easier to develop, in other cases they face difficulties due to a large number of race conditions. We contend that a multi-paradigm programming model comprising a distributed-memory model with a disciplined form of shared-memory programming may constitute a "complete" and powerful parallel programming system. Optimized coherence mechanisms based on the specific access pattern of a shared variable show significant performance benefits over general DSM coherence protocols. We present MSA, a system that supports such specifically shared arrays that can be shared in read-only, write-many, and accumulate modes. These simple modes scale well and are general enough to capture the majority of shared memory access patterns. MSA does not support a general read-write access mode, but a single array can be shared in read-only mode in one phase and write-many in another. MSA coexists with the message-passing paradigm (MPI) and the processor virtualization-based message-driven paradigm(Charm++). We present the model, its implementation, programming examples and preliminary performance results.

Original languageEnglish (US)
Pages (from-to)268-282
Number of pages15
JournalLecture Notes in Computer Science
StatePublished - Oct 19 2005
Event17th International Workshop on Languages and Compilers for High Performance Computing, LCPC 2004 - West Lafayette, IN, United States
Duration: Sep 22 2004Sep 24 2004


ASJC Scopus subject areas

  • Theoretical Computer Science
  • Computer Science(all)

Cite this