TY - GEN
T1 - The myrmics memory allocator
T2 - 2012 ACM SIGPLAN International Symposium on Memory Management, ISMM 2012
AU - Lyberis, Spyros
AU - Pratikakis, Polyvios
AU - Nikolopoulos, Dimitrios S.
AU - Schulz, Martin
AU - Gamblin, Todd
AU - De Supinski, Bronis R.
PY - 2012
Y1 - 2012
N2 - Constantly increasing hardware parallelism poses more and more challenges to programmers and language designers. One approach to harness the massive parallelism is to move to task-based programming models that rely on runtime systems for dependency analysis and scheduling. Such models generally benefit from the existence of a global address space. This paper presents the parallel memory allocator of the Myrmics runtime system, in which multiple allocator instances organized in a tree hierarchy cooperate to implement a global address space with dynamic region support on distributed memory machines. The Myrmics hierarchical memory allocator is step towards improved productivity and performance in parallel programming. Productivity is improved through the use of dynamic regions in a global address space, which provide a convenient shared memory abstraction for dynamic and irregular data structures. Performance is improved through scaling on many-core systems without system-wide cache coherency. We evaluate the stand-alone allocator on an MPI-based x86 cluster and find that it scales well for up to 512 worker cores, while it can outperform Unified Parallel C by a factor of 3.7-10.7×.
AB - Constantly increasing hardware parallelism poses more and more challenges to programmers and language designers. One approach to harness the massive parallelism is to move to task-based programming models that rely on runtime systems for dependency analysis and scheduling. Such models generally benefit from the existence of a global address space. This paper presents the parallel memory allocator of the Myrmics runtime system, in which multiple allocator instances organized in a tree hierarchy cooperate to implement a global address space with dynamic region support on distributed memory machines. The Myrmics hierarchical memory allocator is step towards improved productivity and performance in parallel programming. Productivity is improved through the use of dynamic regions in a global address space, which provide a convenient shared memory abstraction for dynamic and irregular data structures. Performance is improved through scaling on many-core systems without system-wide cache coherency. We evaluate the stand-alone allocator on an MPI-based x86 cluster and find that it scales well for up to 512 worker cores, while it can outperform Unified Parallel C by a factor of 3.7-10.7×.
KW - GAS Copyright
KW - Parallel memory allocator
UR - http://www.scopus.com/inward/record.url?scp=84863911646&partnerID=8YFLogxK
U2 - 10.1145/2258996.2259001
DO - 10.1145/2258996.2259001
M3 - Conference contribution
AN - SCOPUS:84863911646
SN - 9781450313506
T3 - International Symposium on Memory Management, ISMM
SP - 15
EP - 24
BT - ISMM 2012 - Proceedings of the 2012 ACM SIGPLAN International Symposium on Memory Management
Y2 - 15 June 2012 through 16 June 2012
ER -