Learning from the Success of MPI
HiPC '01 Proceedings of the 8th International Conference on High Performance Computing
Flattening on the Fly: Efficient Handling of MPI Derived Datatypes
Proceedings of the 6th European PVM/MPI Users' Group Meeting on Recent Advances in Parallel Virtual Machine and Message Passing Interface
Fault Tolerance in Message Passing Interface Programs
International Journal of High Performance Computing Applications
Problems with using MPI 1.1 and 2.0 as compilation targets for parallel language implementations
International Journal of High Performance Computing and Networking
Formal specification of MPI 2.0: Case study in specifying a practical concurrent programming API
Science of Computer Programming
Parallel zero-copy algorithms for fast Fourier transform and conjugate gradient using MPI datatypes
EuroMPI'10 Proceedings of the 17th European MPI users' group meeting conference on Recent advances in the message passing interface
The scalable process topology interface of MPI 2.2
Concurrency and Computation: Practice & Experience
Scalable memory use in MPI: a case study with MPICH2
EuroMPI'11 Proceedings of the 18th European MPI Users' Group conference on Recent advances in the message passing interface
You don't know jack about shared variables or memory models
Communications of the ACM
Automatic memory optimizations for improving MPI derived datatype performance
EuroPVM/MPI'06 Proceedings of the 13th European PVM/MPI User's Group conference on Recent advances in parallel virtual machine and message passing interface
Automatic datatype generation and optimization
Proceedings of the 17th ACM SIGPLAN symposium on Principles and Practice of Parallel Programming
Hi-index | 0.00 |
The Message Passing Interface (MPI) was developed over eighteen years ago and continues to be the preferred programming model for scientific computing. Contributing to that success was a combination of forward-looking features, precise definition, and judgment based on the experience of developers, vendors and users. Today, MPI continues to adapt to the changing needs of parallel programming, with MPI-3 introducing enhancements for collective and one-sided communication, multi-threaded programming, support of performance tools for MPI programming, etc. However, MPI faces many challenges as the nature of parallel computing changes more radically than at any time in the history of MPI. This talk will touch on some of the less obvious but important reasons for MPI success, discuss some of the challenges that MPI faces, and makes suggestions for future directions in MPI and parallel programming language research.