@Article{kandaswamy:evaluation,
  author = {Meenakshi A. Kandaswamy and Mahmut Kandemir and Alok Choudhary and
  David Bernholdt},
  title = {An Experimental Evaluation of {I/O} Optimizations on Different
  Applications},
  journal = {IEEE Transactions on Parallel and Distributed Systems},
  year = {2002},
  month = {July},
  volume = {13},
  number = {7},
  pages = {728--744},
  publisher = {IEEE Computer Society Press},
  URL = {http://ieeexplore.ieee.org/xpl/tocresult.jsp?isNumber=21941},
  keywords = {parallel I/O, parallel application, pario-bib},
  abstract = {any large-scale applications have significant I/O requirements as
  well as computational and memory requirements. Unfortunately, the limited
  number of I/O nodes provided in a typical configuration of the modern
  message-passing distributed-memory architectures such as the Intel Paragon
  and the IBM SP-2 limits the I/O performance of these applications severely.
  In this paper, we examine some software optimization techniques and evaluate
  their effects in five different I/O-intensive codes from both small and large
  application domains. Our goals in this study are twofold. First, we want to
  understand the behavior of large-scale data-intensive applications and the
  impact of I/O subsystems on their performance and vice versa. Second, and
  more importantly, we strive to determine the solutions for improving the
  applications' performance by a mix of software techniques. Our results reveal
  that different applications can benefit from different optimizations. For
  example, we found that some applications benefit from file layout
  optimizations, whereas others take advantage of collective I/O. A combination
  of architectural and software solutions is normally needed to obtain good I/O
  performance. For example, we show that with a limited number of I/O
  resources, it is possible to obtain good performance by using appropriate
  software optimizations. We also show that beyond a certain level, imbalance
  in the architecture results in performance degradation even when using
  optimized software, thereby indicating the necessity of an increase in I/O
  resources.}
}

