Lightweight I/O for Scientific Applications

Today's high-end massively parallel processing (MPP) machines have thousands to tens of thousands of processors, with next-generation systems planned to have in excess of one hundred thousand processors. For systems of such scale, efficient I/O is a significant challenge that cannot be solved using traditional approaches. In particular, general purpose parallel file systems that limit applications to standard interfaces and access policies do not scale and will likely be a performance bottleneck for many scientific applications. In this paper, we investigate the use of a "lightweight" approach to I/O that requires the application or I/O-library developer to extend a core set of critical I/O functionality with the minimum set of features and services required by its target applications. We argue that this approach allows the development of I/O libraries that are both scalable and secure. We support our claims with preliminary results for a lightweight checkpoint operation on a development cluster at Sandia

[1]  David F. Heidel,et al.  An Overview of the BlueGene/L Supercomputer , 2002, ACM/IEEE SC 2002 Conference (SC'02).

[2]  Garth A. Gibson,et al.  A Case for Network-Attached Secure Disks, , 1996 .

[3]  William J. Bolosky,et al.  Mach: A New Kernel Foundation for UNIX Development , 1986, USENIX Summer.

[4]  Eduardo F. D'Azevedo,et al.  A Study of I/o in a pArallel Finite Element Groundwater Transport Code , 1998, Int. J. High Perform. Comput. Appl..

[5]  Keith D. Underwood,et al.  A performance comparison of Linux and a lightweight kernel , 2003, 2003 Proceedings IEEE International Conference on Cluster Computing.

[6]  David S. Greenberg,et al.  A System Software Architecture for High End Computing , 1997, ACM/IEEE SC 1997 Conference (SC'97).

[7]  David A. Patterson,et al.  Computer architecture (2nd ed.): a quantitative approach , 1996 .

[8]  Ron Brightwell,et al.  The Portals 3.0 Message Passing Interface Revision 1.0 , 1999 .

[9]  M. Winslett,et al.  Server-directed collective I/O in Panda , 1995 .

[10]  Patrick M. Widener,et al.  Efficient Data-Movement for Lightweight I/O , 2006, 2006 IEEE International Conference on Cluster Computing.

[11]  スタンフィル,クレッグ,et al.  Parallel virtual file system , 1998 .

[12]  Robert Latham,et al.  A next-generation parallel file system for Linux cluster. , 2004 .

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

[14]  Jim Zelenka,et al.  File server scaling with network-attached secure disks , 1997, SIGMETRICS '97.

[15]  Evgenia Smirni,et al.  Lessons from Characterizing the Input/Output Behavior of Parallel Scientific Applications , 1998, Perform. Evaluation.

[16]  Wei-keng Liao,et al.  Scalable high-level caching for parallel I/O , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[17]  Hai Jin,et al.  Active Disks: Programming Model, Algorithms and Evaluation , 2002 .

[18]  Rajeev Thakur,et al.  Optimizing noncontiguous accesses in MPI-IO , 2002, Parallel Comput..

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

[20]  Ron A. Oldfield,et al.  Efficient Parallel I/o in sEismic Imaging , 1998, Int. J. High Perform. Comput. Appl..

[21]  Michael Stumm,et al.  HFS: a performance-oriented flexible file system based on building-block compositions , 1996, IOPADS '96.

[22]  Lustre : A Scalable , High-Performance File System Cluster , 2003 .

[23]  Rolf Riesen,et al.  PUMA: an operating system for massively parallel systems , 1994, 1994 Proceedings of the Twenty-Seventh Hawaii International Conference on System Sciences.

[24]  Emin Gün Sirer,et al.  SPIN: an extensible microkernel for application-specific operating system services , 1994, EW 6.

[25]  Christos Faloutsos,et al.  Active Disks for Large-Scale Data Processing , 2001, Computer.

[26]  Garth A. Gibson,et al.  Security for a high performance commodity storage subsystem , 1999 .

[27]  Erez Zadok,et al.  Extending File Systems Using Stackable Templates , 1999, USENIX Annual Technical Conference, General Track.

[28]  S. R. Wheat,et al.  Message passing in PUMA , 1993 .

[29]  Robert B. Ross,et al.  PVFS: A Parallel File System for Linux Clusters , 2000, Annual Linux Showcase & Conference.

[30]  Ian T. Foster,et al.  ChemIo: High Performance Parallel I/o for Computational Chemistry Applications , 1998, Int. J. High Perform. Comput. Appl..

[31]  David S. Greenberg,et al.  Beyond core: Making parallel computer I/O practical , 1993 .

[32]  Rajeev Thakur,et al.  An Extended Two-Phase Method for Accessing Sections of Out-of-Core Arrays , 1996, Sci. Program..

[33]  John S. Heidemann,et al.  File-system development with stackable layers , 1994, TOCS.

[34]  Carla Schlatter Ellis,et al.  Practical prefetching techniques for multiprocessor file systems , 2005, Distributed and Parallel Databases.

[35]  Ron Brightwell,et al.  Architectural specification for massively parallel computers: an experience and measurement‐based approach , 2003, Concurr. Pract. Exp..

[36]  Dhabaleswar K. Panda,et al.  PVFS over InfiniBand: design and performance evaluation , 2003, 2003 International Conference on Parallel Processing, 2003. Proceedings..

[37]  Jim Zelenka,et al.  Informed prefetching and caching , 1995, SOSP.

[38]  Henry M. Levy,et al.  Capability-Based Computer Systems , 1984 .