TY - GEN
T1 - Specifying synchronization in distributed shared memory programs
AU - Singh, G.
N1 - Publisher Copyright:
© 2002 IEEE.
PY - 2002
Y1 - 2002
N2 - Several notions of consistency have been proposed to provide a consistent view of the shared memory. A consistency notion imposes constraints on the order in which updates to shared variables are made visible to various processes. We classify such constraints as intra-process constraints and many existing consistency notions provide flexible mechanisms to specify such constraints. We may also need to specify inter-process constraints to restrict the sequence in which updates issued by different processes are made visible. We propose the notion of invariant consistency that allows specification of such interprocess synchronization constraints. For this propose, we allow a programmer to label program operations and specify an invariant I constraining the execution of labeled operations at different processes. The implementation of invariant consistency ensures that the labeled operations are made visible in an order that satisfies I. We also give an implementation of invariant consistency that involves a mechanical translation of invariants to synchronization code. We show that invariant consistency simplifies programming as it eliminates application-level synchronization code to enforce inter-process constraints.
AB - Several notions of consistency have been proposed to provide a consistent view of the shared memory. A consistency notion imposes constraints on the order in which updates to shared variables are made visible to various processes. We classify such constraints as intra-process constraints and many existing consistency notions provide flexible mechanisms to specify such constraints. We may also need to specify inter-process constraints to restrict the sequence in which updates issued by different processes are made visible. We propose the notion of invariant consistency that allows specification of such interprocess synchronization constraints. For this propose, we allow a programmer to label program operations and specify an invariant I constraining the execution of labeled operations at different processes. The implementation of invariant consistency ensures that the labeled operations are made visible in an order that satisfies I. We also give an implementation of invariant consistency that involves a mechanical translation of invariants to synchronization code. We show that invariant consistency simplifies programming as it eliminates application-level synchronization code to enforce inter-process constraints.
UR - http://www.scopus.com/inward/record.url?scp=84897012185&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84897012185&partnerID=8YFLogxK
U2 - 10.1109/ICPPW.2002.1039754
DO - 10.1109/ICPPW.2002.1039754
M3 - Conference contribution
AN - SCOPUS:84897012185
T3 - Proceedings of the International Conference on Parallel Processing Workshops
SP - 375
EP - 382
BT - Proceedings - International Conference on Parallel Processing Workshops, ICPPW 2002
A2 - Olariu, Stephan
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - International Conference on Parallel Processing Workshops, ICPPW 2002
Y2 - 18 August 2002 through 21 August 2002
ER -