1997parcomp I. Parsons, R. Unrau, J. Schaeffer, and D. Szafron, PI/OT: Parallel I/O Templates, Parallel Computing, Vol. 23, No. 4-5, May 1997, 543-570. abstract or pdf.

This paper presents a novel, top-down, high-level approach to parallelizing file I/O. Each parallel file descriptor is annotated with a high-level specification, or template, of the expected parallel behavior. The annotations are external to and independent of the source code. At run-time, all I/O using a parallel file descriptor adheres to the semantics of the selected template. By separating the parallel I/O specifications from the code, a user can quickly change the I/O behavior without rewriting the code. Templates can be composed hierarchically to construct complex access patterns. Two sample parallel programs using these templates are compared against versions implemented in an existing parallel I/O system (PIOUS). The sample programs show that the use of parallel I/O templates are beneficial from both the performance and software engineering points of view.