Evaluating Sparse Data Storage Techniques for MPI Groups and Communicators
ICCS '08 Proceedings of the 8th international conference on Computational Science, Part I
Scalability of communicators and groups in MPI
Proceedings of the 19th ACM International Symposium on High Performance Distributed Computing
Compact and efficient implementation of the MPI group operations
EuroMPI'10 Proceedings of the 17th European MPI users' group meeting conference on Recent advances in the message passing interface
MPI 3 and beyond: why MPI is successful and what challenges it faces
EuroMPI'12 Proceedings of the 19th European conference on Recent Advances in the Message Passing Interface
Delegation-Based MPI communications for a hybrid parallel computer with many-core architecture
EuroMPI'12 Proceedings of the 19th European conference on Recent Advances in the Message Passing Interface
In-place algorithms for the symmetric all-to-all exchange with MPI
Proceedings of the 20th European MPI Users' Group Meeting
Hi-index | 0.00 |
One of the factors that can limit the scalability of MPI to exascale is the amount of memory consumed by the MPI implementation. In fact, some researchers believe that existing MPI implementations, if used unchanged, will themselves consume a large fraction of the available system memory at exascale. To investigate and address this issue, we undertook a study of the memory consumed by the MPICH2 implementation of MPI, with a focus on identifying parts of the code where the memory consumed per process scales linearly with the total number of processes. We report on the findings of this study and discuss ways to avoid the linear growth in memory consumption. We also describe specific optimizations that we implemented in MPICH2 to avoid this linear growth and present experimental results demonstrating the memory savings achieved and the impact on performance.