@Article{jain:pario,
  author = {Ravi Jain and Kiran Somalwar and John Werth and J. C. Browne},
  title = {Scheduling Parallel {I/O} Operations in Multiple Bus Systems},
  journal = {Journal of Parallel and Distributed Computing},
  year = {1992},
  month = {December},
  volume = {16},
  number = {4},
  pages = {353--362},
  publisher = {Academic Press},
  keywords = {parallel I/O, shared memory, scheduling, pario-bib},
  comment = {An algorithm to schedule (off-line) a set of transfers between P
  procs and D disks, such that no proc or disk does more than one request at a
  time, and no more than K transfers are concurrent (due to channel limits),
  with integer arbitrary-length transfers that are preemptable (ie
  segmentable). Much faster than previous algorithms. Problems, IMHO: off-line
  is only good for batch executions with known needs (ok for big collective
  I/Os I suppose). All k channels are usable by all proc-disk pairs, may not be
  realistic. No accomodation for big difference in disk and channel time, ie,
  disk probably can't do a channel transfer every time unit. Allows transfers
  in any order, which means disk seeks could be bad. No cost for preemption of
  a transfer, which could mean more message overhead if more messages are
  needed to do a given transfer. Assumes all transfers have predictable time.
  Still, it could be useful in some situations, esp. where order really doesn't
  matter.}
}

