Chapter

Recent Advances in Parallel Virtual Machine and Message Passing Interface

Volume 3666 of the series Lecture Notes in Computer Science pp 415-424

An Evaluation of Implementation Options for MPI One-Sided Communication

  • William GroppAffiliated withMathematics and Computer Science Division, Argonne National Laboratory
  • , Rajeev ThakurAffiliated withMathematics and Computer Science Division, Argonne National Laboratory

* Final gross prices may vary according to local VAT.

Get Access

Abstract

MPI defines one-sided communication operations—put, get, and accumulate—together with three different synchronization mechanisms that define the semantics associated with the initiation and completion of these operations. In this paper, we analyze the requirements imposed by the MPI Standard on any implementation of one-sided communication. We discuss options for implementing the synchronization mechanisms and analyze the cost associated with each. An MPI implementer can use this information to select the implementation method that is best suited (has the lowest cost) for a particular machine environment. We also report on experiments we ran on a Linux cluster and a Sun SMP to determine the gap between the performance that could be achievable and what is actually achieved with MPI.