Throttling I/O streams to accelerate file-IO performance

  • Authors:
  • Seetharami Seelam;Andre Kerstens;Patricia J. Teller

  • Affiliations:
  • IBM Research, Yorktown Heights, NY;SGI, Sunnyvale, CA;The University of Texas at El Paso, El Paso, TX

  • Venue:
  • HPCC'07 Proceedings of the Third international conference on High Performance Computing and Communications
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

To increase the scale and performance of high-performance computing (HPC) applications, it is common to distribute computation across multiple processors. Often without realizing it, file I/O is parallelized with the computation. An implication of this is that multiple compute tasks are likely to concurrently access the I/O nodes of an HPC system. When a large number of I/O streams concurrently access an I/O node, I/O performance tends to degrade, impacting application execution time. This paper presents experimental results that show that controlling the number of file-I/O streams that concurrently access an I/O node can enhance application performance. We call this mechanism file-I/O stream throttling. The paper (1) describes this mechanism and demonstrates how it can be implemented either at the application or system software layers, and (2) presents results of experiments driven by the cosmology application benchmark MADbench, executed on a variety of computing systems, that demonstrate the effectiveness of file-I/O stream throttling. The I/O pattern of MADbench resembles that of a large class of HPC applications.