Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Implementing MPI-IO atomic mode and shared file pointers using MPI one-sided communication.

Journal Article · · Int. J. High Perform. Comput. Appl.
The ROMIO implementation of the MPI-IO standard provides a portable infrastructure for use on top of a variety of underlying storage targets. These targets vary widely in their capabilities, and in some cases additional effort is needed within ROMIO to support all MPI-IO semantics. Two aspects of the interface that can be problematic to implement are MPI-IO atomic mode and the shared file pointer access routines. Atomic mode requires enforcing strict consistency semantics, and shared file pointer routines require communication and coordination in order to atomically update a shared resource. For some file systems, native locks may be used to implement these features, but not all file systems have lock support. In this work, we describe algorithms for implementing efficient mutex locks using MPI-1 and the one-sided capabilities from MPI-2. We then show how these algorithms may be used to implement both MPI-IO atomic mode and shared file pointer methods for ROMIO without requiring any features from the underlying file system. We show that these algorithms can outperform traditional file system lock approaches. Because of the portable nature of these algorithms, they are likely useful in a variety of situations where distributed locking or coordination is needed in the MPI-2 environment.
Research Organization:
Argonne National Laboratory (ANL)
Sponsoring Organization:
SC
DOE Contract Number:
AC02-06CH11357
OSTI ID:
914949
Report Number(s):
ANL/MCS/JA-58543
Journal Information:
Int. J. High Perform. Comput. Appl., Journal Name: Int. J. High Perform. Comput. Appl. Journal Issue: 2 ; Summer 2007 Vol. 21
Country of Publication:
United States
Language:
ENGLISH

Similar Records

On implementing MPI-IO portably and with high performance.
Conference · Sun Nov 29 23:00:00 EST 1998 · OSTI ID:775253

Optimizing noncontiguous accesses in MPI-IO.
Journal Article · Mon Dec 31 23:00:00 EST 2001 · Parallel Comput. · OSTI ID:943133

Users guide for ROMIO: A high-performance, portable MPI-IO implementation
Technical Report · Wed Oct 01 00:00:00 EDT 1997 · OSTI ID:564273