2014 23rd International Conference on Parallel Architecture and Compilation (PACT) (2014)
Aug. 23, 2014 to Aug. 27, 2014
Alex Aiken , Stanford University, Stanford, CA
Michael Bauer , Stanford University, Stanford, CA
Sean Treichler , Stanford University, Stanford, CA
We present Realm, an event-based runtime system for heterogeneous, distributed memory machines. Realm is fully asynchronous: all runtime actions are non-blocking. Realm supports spawning computations, moving data, and reservations, a novel synchronization primitive. Asynchrony is exposed via a light-weight event system capable of operating without central management. We describe an implementation of Realm that relies on a novel generational event data structure for efficiently handling large numbers of events in a distributed address space. Microbenchmark experiments show our implementation of Realm approaches the underlying hardware performance limits. We measure the performance of three real-world applications on the Keeneland supercomputer. Our results demonstrate that Realm confers considerable latency hiding to clients, attaining significant speedups over traditional bulk-synchronous and independently optimized MPI codes.
Runtime, Synchronization, Hardware, Computational modeling, Programming, Java, Semantics,runtime, Realm, Legion, distributed memory, deferred execution, events, reservations, heterogeneous architectures
Alex Aiken, Michael Bauer, Sean Treichler, "Realm: An event-based low-level runtime for distributed memory architectures", 2014 23rd International Conference on Parallel Architecture and Compilation (PACT), vol. 00, no. , pp. 263-275, 2014, doi:10.1145/2628071.2628084