An extended two-phase method for accessing sections of out-of-core arrays

  • Authors:
  • Rajeev Thakur;Alok Choudhary

  • Affiliations:
  • -;-

  • Venue:
  • Scientific Programming
  • Year:
  • 1996

Quantified Score

Hi-index 0.00

Visualization

Abstract

A number of applications on parallel computers deal with very largedata sets that cannot fit in main memory. In such applications,data must be stored in files on disks and fetched into memoryduring program execution. Parallel programs with large out-of-corearrays stored in files must read/write smaller sections of thearrays from/to files. In this article, we describe a method foraccessing sections of out-of-core arrays efficiently. Our method,the extended two-phase method, uses collective l/O: Processorscooperate to combine several l/O requests into fewer largergranularity requests, to reorder requests so that the file isaccessed in proper sequence, and to eliminate simultaneous l/Orequests for the same data. In addition, the l/O workload isdivided among processors dynamically, depending on the accessrequests. We present performance results obtained from two realout-of-core parallel applications - matrix multiplication and aLaplace's equation solver - and several synthetic access patterns,all on the Intel Touchstone Delta. These results indicate that theextended two-phase method significantly outperformed a direct(noncollective) method for accessing out-of-core array sections.