Supporting the Global Arrays PGAS Model Using MPI One-Sided Communication
The industry-standard Message Passing Interface (MPI) provides one-sided communication functionality and is available on virtually every parallel computing system. However, it is believed that MPI's one-sided model is not rich enough to support higher-level global address space parallel programming models. The authors present the first successful application of MPI one-sided communication as a runtime system for a PGAS model, Global Arrays (GA). This paper has an immediate impact on users of GA applications, such as NWChem, who often must wait several months to a year or more before GA becomes available on a new architecture. They explore challenges present in the application of MPI-2 to PGAS models and motivate new features in the upcoming MPI-3 standard.