David Kotz and Tom Cormen, Dartmouth College
In both multiprocessors and distributed systems, it has become increasingly obvious that the performance of many parallel applications is limited by their ability to move data between main memory and disk. This limitation arises when reading large input data sets, writing checkpoint and output data sets, and manipulating data sets too large to fit in main memory. The ultimate solutions to this problem require a coordinated effort at all levels, including architecture, algorithms, compilers, run-time libraries, and operating systems. This tutorial presents a broad overview of the issues and early results in this burgeoning field of research, with a focus on techniques designed for parallel scientific applications. It features a look toward the future, including a discussion of open research problems and new twists like multimedia servers. The tutorial is aimed primarily at researchers beginning their study of parallel I/O and those interested in an overview of this expanding field of research. It will focus on research issues in parallel I/O rather than on programming specifics. Although participants should have a basic understanding of parallel algorithms and parallel and distributed systems, no prior knowledge of parallel-I/O issues is assumed.
David Kotz is an Assistant Professor of Computer Science at Dartmouth College. He has been actively involved in parallel file-systems research for nearly eight years, and maintains a well-used bibliography, web site, and mailing list about parallel I/O. His primary expertise involves parallel file systems, run-time systems, and architectures. He obtained his A.B. at Dartmouth College in 1986, and his Ph.D at Duke University in 1991.
Thomas H. Cormen received the B.S.E. degree in electrical and computer science from Princeton University in 1978 and the S.M. and Ph.D. degrees in Electrical Engineering and Computer Science from the Massachusetts Institute of Technology in 1986 and 1993, respectively. He has been an assistant professor in the Dartmouth College Department of Computer Science since 1992. Professor Cormen is coauthor of the textbook Introduction to Algorithms, which he wrote with Charles E. Leiserson and Ronald L. Rivest. His research interests are focused on two aspects of parallel-I/O: developing I/O-efficient algorithms for out-of-core problems, and applying the technology of parallel-I/O algorithms to design virtual memory systems for data-parallel computing.