A Thread Taxonomy for MPI

  • Authors:
  • A. Skjellum;B. Protopopov;S. Hebert

  • Affiliations:
  • -;-;-

  • Venue:
  • MPIDC '96 Proceedings of the Second MPI Developers Conference
  • Year:
  • 1996

Quantified Score

Hi-index 0.00

Visualization

Abstract

Abstract: In 1994, we presented extensions to MPI and offered an early paper on potential thread extensions to MPI as well as non-blocking collective extensions to MPI. The present paper is a thorough review of thread issues in MPI, including alternative models, their computational uses, and the impact on implementations. A number of issues are addressed: barriers to thread safety in MPI implementations with MPICH as an example and changes of the semantics of non-thread-safe MPI calls, different thread models, their uses, and possible integration. Minimal portable thread management and synchronization mechanisms API extensions for MPI are considered. A tentative design for multi-threaded thread-safe ADI and Channel Device for MPICH is proposed. We consider threads as both an implementation device for MPI and as a user-level mechanism to achieve fine-grain concurrency. The reduction of the process to a simple resource container (as considered by Mach), with the thread as the main named computational unit is suggested. Specific results thus far with Windows NT version of MPICH are mentioned.