@Article{jain:jschedule, author = {Ravi Jain and Kiran Somalwar and John Werth and J.~C. Browne}, title = {Heuristics for Scheduling {I/O} Operations}, journal = {IEEE Transactions on Parallel and Distributed Systems}, year = {1997}, month = {March}, volume = {8}, number = {3}, pages = {310--320}, URL = {http://www.computer.org/tpds/td1997/l0310abs.htm}, keywords = {network, graph coloring, multiprocessor file system, resource allocation, scheduling, parallel I/O, pario-bib}, abstract = {The I/O bottleneck in parallel computer systems has recently begun receiving increasing interest. Most attention has focused on improving the performance of I/O devices using fairly low-level parallelism in techniques such as disk striping and interleaving. Widely applicable solutions, however, will require an integrated approach which addresses the problem at multiple system levels, including applications, systems software, and architecture. We propose that within the context of such an integrated approach, scheduling parallel I/O operations will become increasingly attractive and can potentially provide substantial performance benefits. \par We describe a simple I/O scheduling problem and present approximate algorithms for its solution. The costs of using these algorithms in terms of execution time, and the benefits in terms of reduced time to complete a batch of I/O operations, are compared with the situations in which no scheduling is used, and in which an optimal scheduling algorithm is used. The comparison is performed both theoretically and experimentally. We have found that, in exchange for a small execution time overhead, the approximate scheduling algorithms can provide substantial improvements in I/O completion times.}, comment = {See also jain:pario} }