Accessing Sections of Out-of-Core Arrays Using an Extended Two-Phase Method

In out-of-core computations, data needs to be moved back and forth between main memory and disks during program execution. In this paper, we propose a technique called the Extended Two-Phase Method, for accessing sections of out-of-core arrays e ciently. This is an extension and generalization of the Two-Phase Method for reading in-core arrays from les, which was previously proposed in [7, 3]. The Extended Two-Phase Method uses collective I/O in which all processors cooperate to perform I/O in an e cient manner by combining several I/O requests into fewer larger requests, eliminating multiple disk accesses for the same data and reducing contention for disks. We describe the algorithms for reading as well as writing array sections. Performance results on the Intel Touchstone Delta for many di erent access patterns are presented and analyzed. It is observed that the Extended Two-Phase Method gives consistently good performance over a wide range of access patterns. This work was supported in part by NSF Young Investigator Award CCR-9357840, grants from Intel SSD and IBM Corp., in part by USRA CESDIS Contract # 5555-26 and also in part by ARPA under contract # DABT63-91C-0028. The content of the information does not necessarily re ect the position or the policy of the US Government and no o cial endorsement should be inferred. Rajeev Thakur is supported by a Syracuse University Graduate Fellowship. This work was performed in part using the Intel Touchstone Delta System operated by Caltech on behalf of the Concurrent Supercomputing Consortium. Access to this facility was provided by CRPC.

[1]  Alok N. Choudhary,et al.  Improved parallel I/O via a two-phase run-time access strategy , 1993, CARN.

[2]  Alok N. Choudhary,et al.  Design and evaluation of primitives for parallel I/O , 1993, Supercomputing '93. Proceedings.

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

[4]  Dror G. Feitelson,et al.  Parallel access to files in the Vesta file system , 1993, Supercomputing '93. Proceedings.

[5]  Alok Choudhary,et al.  Language and Compiler Support for Parallel I/O , 1994 .

[6]  L. C. Smith PASSION Runtime Library for Parallel I/O , 1994 .

[7]  Rakesh Krishnaiyer,et al.  PASSION: Parallel And Scalable Software for Input-Output , 1994 .

[8]  Rajeev Thakur,et al.  All-to-all communication on meshes with wormhole routing , 1994, Proceedings of 8th International Parallel Processing Symposium.

[9]  David Kotz,et al.  Disk-directed I/O for MIMD multiprocessors , 1994, OSDI '94.

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

[11]  Joel H. Saltz,et al.  Jovian: a framework for optimizing parallel I/O , 1994, Proceedings Scalable Parallel Libraries Conference.

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

[13]  Alok N. Choudhary,et al.  The design of VIP-FS: a virtual, parallel file system for high performance parallel and distributed computing , 1995, OPSR.

[14]  Marcin Paprzycki,et al.  Parallel computing works! , 1996, IEEE Parallel & Distributed Technology: Systems & Applications.