TY - GEN
T1 - Integrating software distributed shared memory and message passing programming
AU - Wong, H. J.
AU - Rendell, A. P.
PY - 2009/12/21
Y1 - 2009/12/21
N2 - Software Distributed Shared Memory (SDSM) systems provide programmers with a shared memory programming environment across distributed memory architectures. In contrast to the message passing programming environment, the SDSM can resolve data dependencies within the application without the programmer having to explicitly specify communication. However, this service is provided at a cost to performance. Thus it makes sense to use message passing directly when data dependencies are easy to solve using message passing. For example, it is not complicated to specify data transfer for large contiguous regions of memory. This paper outlines how the Danui SDSM library has been extended to include support for message passing. Four different message passing transfers are identified depending on whether the data being sent/received resides in private or globally shared buffers. Transfers between globally shared buffers are further categorized as symmetrical or asymmetrical depending on whether they correspond to the same region of shared memory. The implication of each transfer type on the memory consistency of the global address space is discussed. Central to the Danui SDSM extension is the use of information provided and implied by message passing operations. The overhead of the implementation is analyzed.
AB - Software Distributed Shared Memory (SDSM) systems provide programmers with a shared memory programming environment across distributed memory architectures. In contrast to the message passing programming environment, the SDSM can resolve data dependencies within the application without the programmer having to explicitly specify communication. However, this service is provided at a cost to performance. Thus it makes sense to use message passing directly when data dependencies are easy to solve using message passing. For example, it is not complicated to specify data transfer for large contiguous regions of memory. This paper outlines how the Danui SDSM library has been extended to include support for message passing. Four different message passing transfers are identified depending on whether the data being sent/received resides in private or globally shared buffers. Transfers between globally shared buffers are further categorized as symmetrical or asymmetrical depending on whether they correspond to the same region of shared memory. The implication of each transfer type on the memory consistency of the global address space is discussed. Central to the Danui SDSM extension is the use of information provided and implied by message passing operations. The overhead of the implementation is analyzed.
KW - message passing
KW - programming environments
KW - data dependency
UR - http://www.scopus.com/inward/record.url?scp=72049100129&partnerID=8YFLogxK
UR - http://purl.org/au-research/grants/ARC/LP0669726
U2 - 10.1109/CLUSTR.2009.5289176
DO - 10.1109/CLUSTR.2009.5289176
M3 - Conference contribution
AN - SCOPUS:72049100129
SN - 9781424450121
T3 - Proceedings - IEEE International Conference on Cluster Computing, ICCC
BT - 2009 IEEE International Conference on Cluster Computing and Workshops, CLUSTER '09
T2 - 2009 IEEE International Conference on Cluster Computing and Workshops, CLUSTER '09
Y2 - 31 August 2009 through 4 September 2009
ER -