On Implementing MPI-IO Portably and with High Performance (1999)
| Venue: | In Proceedings of the 6th Workshop on I/O in Parallel and Distributed Systems |
| Citations: | 137 - 21 self |
BibTeX
@INPROCEEDINGS{Thakur99onimplementing,
author = {Rajeev Thakur and William Gropp and Ewing Lusk},
title = {On Implementing MPI-IO Portably and with High Performance},
booktitle = {In Proceedings of the 6th Workshop on I/O in Parallel and Distributed Systems},
year = {1999},
pages = {23--32},
publisher = {ACM Press}
}
Years of Citing Articles
OpenURL
Abstract
We discuss the issues involved in implementing MPI-IO portably on multiple machines and file systems and also achieving high performance. One way to implement MPI-IO portably is to implement it on top of the basic Unix I/O functions (open, lseek, read, write, and close), which are themselves portable. We argue that this approach has limitations in both functionality and performance. We instead advocatean implementation approach that combines a large portion of portable code and a small portion of code that is optimized separately for different machines and file systems. We have used such an approach to develop a high-performance, portable MPI-IO implementation, called ROMIO. In addition to basic I/O functionality, we consider the issues of supporting other MPI-IO features, such as 64-bit file sizes, noncontiguous accesses, collective I/O, asynchronous I/O, consistency and atomicity semantics, user-supplied hints, shared file pointers, portable data representation, and file preallocati...







