Parallel Array Object I/O Support on Distributed Environments

This paper presents a parallel file object environment to support distributed array store on shared-nothing distributed computing environments. Our environment enables programmers to extend the concept of array distributions from memory levels to file levels. It allows parallel I/O that facilitates the distribution of objects in an application. When objects are read and/or written by multiple applications using different distributions, we present a novel scheme to help programmers to select the best data distribution pattern according to a minimum amount of remote data movements for the store of array objects on distributed file systems. Our selection scheme, to the best of our knowledge, is the first work to attempt to optimize the distribution patterns in the secondary storage for HPF-like programs with inter-application cases. This is especially important for a class of problems called multiple disciplinary optimization (MDO) problems. Our test bed is built on an 8-node DEC Farm connected with an ethernet, FDDI, or ATM switch. Our experimental results with scientific applications show that not only our parallel file system can provide aggregate bandwidths, but also our selection scheme effectively reduces the communication traffic for the system.

[1]  Dennis Gannon,et al.  Distributed pC++ Basic Ideas for an Object Parallel Language , 1993, Sci. Program..

[2]  Alok N. Choudhary Parallel I/O Systems - Guest Editor's Introduction , 1993, J. Parallel Distributed Comput..

[3]  W. Sierpinski Elementary Theory of Numbers , 1964 .

[4]  David Levine,et al.  Applications-driven parallel I/O , 1993, Supercomputing '93. Proceedings.

[5]  Charles Koelbel Compile-time generation of regular communications patterns , 1991, Proceedings of the 1991 ACM/IEEE Conference on Supercomputing (Supercomputing '91).

[6]  Guy L. Steele,et al.  The High Performance Fortran Handbook , 1993 .

[7]  Thomas R. Gross,et al.  Generating Communication for Array Statement: Design, Implementation, and Evaluation , 1994, J. Parallel Distributed Comput..

[8]  John R. Gilbert,et al.  Generating local addresses and communication sets for data-parallel programs , 1993, PPOPP '93.

[9]  Yu-Tin Chen,et al.  Modelling three-dimensional gas-turbine-combustor-model flows on parallel machine with distributed memory , 1995 .

[10]  Dror G. Feitelson,et al.  Design and implementation of the Vesta parallel file system , 1994, Proceedings of IEEE Scalable High Performance Computing Conference.

[11]  Jenq Kuen Lee,et al.  Object oriented parallel programming: experiments and results , 1991, Proceedings of the 1991 ACM/IEEE Conference on Supercomputing (Supercomputing '91).

[12]  W. Gropp,et al.  Applications-driven parallel I/O , 1993, Supercomputing '93.

[13]  Alok N. Choudhary,et al.  High-performance I/O for massively parallel computers: problems and prospects , 1994, Computer.

[14]  Peter Brezany,et al.  Concurrent file operations in a high performance FORTRAN , 1992, Proceedings Supercomputing '92.

[15]  Steven A. Moyer,et al.  PIOUS: a scalable parallel I/O system for distributed computing environments , 1994, Proceedings of IEEE Scalable High Performance Computing Conference.

[16]  Dennis Gannon,et al.  pC++/streams: a library for I/O on complex distributed data sources , 1995, PPOPP '95.

[17]  Ken Kennedy,et al.  A linear-time algorithm for computing the memory access sequence in data-parallel programs , 1995, PPOPP '95.

[18]  Geoffrey C. Fox,et al.  Runtime array redistribution in HPF programs , 1994, Proceedings of IEEE Scalable High Performance Computing Conference.

[19]  Barbara M. Chapman,et al.  Supercompilers for parallel and vector computers , 1990, ACM Press frontier series.

[20]  Ronald L. Rivest,et al.  Introduction to Algorithms , 1990 .

[21]  Rajeev Thakur,et al.  Compiler and runtime support for out-of-core HPF programs , 1994, ICS '94.

[22]  Alok N. Choudhary,et al.  An experimental performance evaluation of Touchstone Delta Concurrent File System , 1993, ICS '93.

[23]  Geoffrey C. Fox,et al.  Compiling Fortran 90D/HPF for Distributed Memory MIMD Computers , 1994, J. Parallel Distributed Comput..

[24]  Matthew Haines,et al.  Exploiting Parallelism in Multidisciplinary Applications Using Opus , 1995, PPSC.

[25]  A. Choudhary,et al.  Design and Evaluation of primitives for Parallel I/O , 1993, Supercomputing '93.

[26]  Ken Kennedy,et al.  A model and compilation strategy for out-of-core data parallel programs , 1995, PPOPP '95.

[27]  G. Amdhal,et al.  Validity of the single processor approach to achieving large scale computing capabilities , 1967, AFIPS '67 (Spring).

[28]  A. Leonard Computing Three-Dimensional Incompressible Flows with Vortex Elements , 1985 .

[29]  Jenq Kuen Lee,et al.  An array operation synthesis scheme to optimize Fortran 90 programs , 1995, PPOPP '95.