Notified Access: Extending Remote Memory Access Programming Models for Producer-Consumer Synchronization


METADATA ONLY
Loading...

Date

2015

Publication Type

Conference Paper

ETH Bibliography

yes

Citations

Altmetric
METADATA ONLY

Data

Rights / License

Abstract

Remote Memory Access (RMA) programming enables direct access to low-level hardware features to achieve high performance for distributed-memory programs. However, the design of RMA programming schemes focuses on the memory access and less on the synchronization. For example, in contemporary RMA programming systems, the widely used producer-consumer pattern can only be implemented inefficiently, incurring in an overhead of an additional round-trip message. We propose Notified Access, a scheme where the target process of an access can receive a completion notification. This scheme enables direct and efficient synchronization with a minimum number of messages. We implement our scheme in an open source MPI-3 RMA library and demonstrate lower overheads (two cache misses) than other point-to-point synchronization mechanisms for each notification. We also evaluate our implementation on three real-world benchmarks, a stencil computation, a tree computation, and a Colicky factorization implemented with tasks. Our scheme always performs better than traditional message passing and other existing RMA synchronization schemes, providing up to 50% speedup on small messages. Our analysis shows that Notified Access is a valuable primitive for any RMA system. Furthermore, we provide guidance for the design of low-level network interfaces to support Notified Access efficiently.

Publication status

published

Editor

Book title

2015 IEEE International Parallel and Distributed Processing Symposium (IPDPS)

Journal / series

Volume

Pages / Article No.

871 - 881

Publisher

IEEE

Event

29th IEEE International Parallel and Distributed Processing Symposium (IPDPS 2015)

Edition / version

Methods

Software

Geographic location

Date collected

Date created

Subject

RMA; Synchronization; Notification; MPI

Organisational unit

03950 - Hoefler, Torsten / Hoefler, Torsten check_circle

Notes

Funding

Related publications and datasets