Skip to main content
Back to USENIX
  • Conferences
  • Students
Sign in

USENIX Conference Policies

  • Event Code of Conduct
  • Conference Network Policy
  • Statement on Environmental Responsibility Policy

Automatic Compiler-Inserted I/O Prefetching for Out-Of-Core Applications

Todd C. Mowry, Angela K. Demke and Orran Krieger, University of Toronto

Current operating systems offer poor performance when a numeri c 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 sys tem 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.

Todd C. Mowry, University of Toronto

Angela K. Demke, University of Toronto

Orran Krieger, University of Toronto

BibTeX
@inproceedings {260652,
author = {Todd C. Mowry and Angela K. Demke and Orran Krieger},
title = {Automatic {Compiler-Inserted} {I/O} Prefetching for {Out-Of-Core} Applications},
booktitle = {USENIX 2nd Symposium on OS Design and Implementation (OSDI 96)},
year = {1996},
address = {Seattle, WA},
url = {https://www.usenix.org/conference/osdi-96/automatic-compiler-inserted-io-prefetching-out-core-applications},
publisher = {USENIX Association},
month = oct
}
Download

Links

Paper (HTML): 
http://usenix.org/publications/library/proceedings/osdi96/full_papers/mowry/index.html
Slides: 
https://www.usenix.org/legacy/publications/library/proceedings/osdi96/talk_slides/mowry/mowry.talk.ps
  • Log in or register to post comments

© USENIX
EIN 13-3055038

  • Privacy Policy
  • Contact Us