• DocumentCode
    1686860
  • Title

    Improving I/O performance through compiler-directed code restructuring and adaptive prefetching

  • Author

    Son, Seung Woo ; Kandemir, Mahmut ; Karakoy, Mustafa

  • Author_Institution
    Dept. of Comput. Sci. & Eng., Pennsylvania State Univ., State College, PA
  • fYear
    2008
  • Firstpage
    1
  • Lastpage
    5
  • Abstract
    Due to the huge and continuously increasing disparity between CPU speeds and disk access latencies, large high- performance applications that exercise disks tend to waste a disproportionate percentage of their execution times waiting for disk requests to complete. This paper presents two compiler-directed approaches to improving the I/O performance of data-intensive applications: code restructuring for disk reuse maximization and adaptive I/O prefetching. The compiler-directed code restructuring improves I/O performance by reducing the number of disk accesses through increasing disk reuse. That is, the data in a given set of disks are reused as much as possible before moving onto other disks. Adaptive I/O prefetching, on the other hand, is motivated by the observation that the effectiveness of compiler- directed I/O prefetching reduces significantly due to harmful prefetches when multiple CPUs share the same set of disks. To reduce intra- and inter-CPU harmful prefetches, our adaptive I/O prefetching scheme obtains inter-thread data sharing patterns through profiling and, based on the extracted sharing patterns, divides the threads into clusters and assigns a dedicated I/O prefetcher thread to each cluster. Our experimental results clearly show that both these approaches improve the I/O performance dramatically over the conventional data locality oriented schemes and compiler-directed I/O prefetching schemes.
  • Keywords
    input-output programs; multi-threading; program compilers; CPU speeds; I/O performance; adaptive I/O prefetching; compiler-directed I/O prefetching; compiler-directed code restructuring; data-intensive applications; disk access latency; disk requests; disk reuse maximization; inter-thread data sharing patterns; Application software; Computer science; Data mining; Delay; Educational institutions; High performance computing; Large-scale systems; Prefetching; Pressing; Yarn;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Processing, 2008. IPDPS 2008. IEEE International Symposium on
  • Conference_Location
    Miami, FL
  • ISSN
    1530-2075
  • Print_ISBN
    978-1-4244-1693-6
  • Electronic_ISBN
    1530-2075
  • Type

    conf

  • DOI
    10.1109/IPDPS.2008.4536389
  • Filename
    4536389