The standardization of Message Passing Interface (MPI) has resulted in the development of a large number of MPI based parallel applications. For these applications to achieve high performance, it is crucial that the MPI library realizes communication efficiently. While progress has been made in optimizing MPI performance, the current implementations of MPI collective communication routines are far from ideal.
For MPI collective communication routines to achieve high performance on different platforms, they must be able to adapt to the system architecture and use different algorithms in different situations
The main challenge therefore, lies in the mechanism to facilitate a library routine to adapt to a given system/application configuration and to find the most efficient algorithm for the configuration.
Intellectual Merit
The PI proposes to use a technique, which he will call delayed finalization of MPI collective communication routines (DFoMCCR), to improve the software adaptability in MPI libraries. A system that supports DFoMCCR has two key components: (1) an algorithm repository that contains different algorithms that can potentially achieve high performance at different situations, (2) an automatic algorithm selection mechanism to determine the algorithms to be used in a routine.
The delayed finalization potentially allows architecture and application specific optimizations to be performed on the library routines. A system that supports DFoMCCR can significantly out-perform traditional MPI libraries.
The PI will investigate DFoMCCR and mechanisms to facilitate DFoMCCR by developing various library systems that support DFoMCCR. The plan is to implement an algorithm repository that contains extensive sets of topology/system unaware and topology/system specific algorithms for common MPI collective communication operations.
Broader Impact
-efficient collective communication implementations obtained from the new libraries -improved performance of MPI applications, which will benefit a very broad science and engineering community that uses MPI to solve problems. -availability of these libraries will also benefit the MPI research community. -project will train a number of undergraduate and graduate students in this area. -Some techniques developed will be included in graduate and undergraduate elective courses.