Automatic compiler-inserted I/O prefetching for out-of-core applications

被引:0
|
作者
Mowry, TC
Demke, AK
Krieger, O
机构
关键词
D O I
10.1145/238721.238734
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Current operating systems offer poor performance when a numeric application's working set does not fit in main memory. As a result, programmers who wish to solve ''out-of-core'' problems efficiently are typically faced with the onerous task of rewriting an application to use explicit I/O operations (e.g., read/write). In this paper, we propose and evaluate a fully-automatic technique which liberates the programmer from this task, provides high performance, and requires only minimal changes to current operating systems. In our scheme, the compiler provides the crucial information on future access patterns without burdening the programmer, the operating system supports non-binding prefetch and release hints for managing I/O, and the operating system cooperates with a run-time layer to accelerate performance by adapting to dynamic behavior and minimizing prefetch overhead. This approach maintains the abstraction of unlimited virtual memory for the programmer, gives the compiler the flexibility to aggressively move prefetches back ahead of references, and gives the operating system the flexibility to arbitrate between the competing resource demands of multiple applications. We have implemented our scheme using the SUIF compiler and the Hurricane operating system. Our experimental results demonstrate that our fully-automatic scheme effectively hides the I/O latency in out-of-core versions of the entire NAS Parallel benchmark suite, thus resulting in speedups of roughly twofold for five of the eight applications, with two applications speeding up by threefold or more.
引用
收藏
页码:3 / 17
页数:15
相关论文
共 50 条
  • [1] Compiler-based I/O prefetching for out-of-core applications
    Brown, AD
    Mowry, TC
    Krieger, O
    ACM TRANSACTIONS ON COMPUTER SYSTEMS, 2001, 19 (02): : 111 - 170
  • [2] Automatic compiler-inserted prefetching for pointer-based applications
    Luk, CK
    Mowry, TC
    IEEE TRANSACTIONS ON COMPUTERS, 1999, 48 (02) : 134 - 141
  • [3] Tolerating latency in multiprocessors through compiler-inserted prefetching
    Mowry, TC
    ACM TRANSACTIONS ON COMPUTER SYSTEMS, 1998, 16 (01): : 55 - 92
  • [4] Spatial prefetching for out-of-core visualization of multidimensional data
    Lipsa, Dan R.
    Rhodes, Philip J.
    Bergeron, R. Daniel
    Sparr, Ted M.
    VISUALIZATION AND DATA ANALYSIS 2007, 2007, 6495
  • [5] Global I/O optimizations for out-of-core computations
    Kandemir, M
    Kandaswamy, M
    Choudhary, A
    FOURTH INTERNATIONAL CONFERENCE ON HIGH-PERFORMANCE COMPUTING, PROCEEDINGS, 1997, : 401 - 406
  • [6] The practice of I/O optimizations for out-of-core computation
    Tang, JQ
    Fang, BX
    Hu, MZ
    Zhang, HL
    PARALLEL AND DISTRIBUTED COMPUTING: APPLICATIONS AND TECHNOLOGIES, PROCEEDINGS, 2004, 3320 : 81 - 85
  • [7] Visibility-based prefetching for interactive out-of-core rendering
    Corrêa, WT
    Klosowski, JT
    Silva, CT
    PVG 2003 PROCEEDINGS, 2003, : 1 - 8
  • [8] Transforming the adaptive irregular out-of-core applications for hiding communication and disk I/O
    Hu, Changjun
    Yao, Guangli
    Wang, Jue
    Li, Jianjiang
    ON THE MOVE TO MEANINGFUL INTERNET SYSTEMS 2007: COOPIS, DOA, ODBASE, GADA, AND IS, PT 2, PROCEEDINGS, 2007, 4804 : 1200 - 1213
  • [9] Out-of-core streamline visualisation based on adaptive partitioning and data prefetching
    Guo, Yumeng
    Wang, Wenke
    Li, Sikun
    INTERNATIONAL JOURNAL OF COMPUTATIONAL SCIENCE AND ENGINEERING, 2019, 20 (02) : 200 - 208
  • [10] Reducing the I/O volume in an out-of-core sparse multifrontal solver
    Agullo, Emmanuel
    Guermouche, Abdou
    L'Excellent, Jean-Yves
    HIGH PERFORMANCE COMPUTING - HIPC 2007, PROCEEDINGS, 2007, 4873 : 47 - +