Exploiting disk layout and block access history for I/O prefetch

Feng Chen, Xiaoning Ding, Song Jiang

Research output: Chapter in Book/Report/Conference proceedingChapter

4 Scopus citations


As the major secondary storage device, the hard disk plays a critical role in modern computer system. In order to improve disk performance, most operating systems conduct data prefetch policies by tracking I/O access pattern, mostly at the level of file abstractions. Though such a solution is useful to exploit application-level access patterns, file-level prefetching has many constraints that limit the capability of fully exploiting disk performance. The reasons are twofold. First, certain prefetch opportunities can only be detected by knowing the data layout on the hard disk, such as metadata blocks. Second, due to the non-uniform access cost on the hard disk, the penalty of mis-prefetching a random block is much more costly than mis-prefetching a sequential block. In order to address the intrinsic limitations of file-level prefetching, we propose to prefetch data blocks directly at the disk level in a portable way. Our proposed scheme, called DiskSeen, is designed to supplement file-level prefetching. DiskSeen observes the workload access pattern by tracking the locations and access times of disk blocks. Based on analysis of the temporal and spatial relationships of disk data blocks, DiskSeen can significantly increase the sequentiality of disk accesses and improve disk performance in turn. We implemented the DiskSeen scheme in the Linux 2.6 kernel and we show that it can significantly improve the effectiveness of file-level prefetching and reduce execution times by 20-53% for various types of applications, including grep, CVS, and TPC-H.

Original languageEnglish (US)
Title of host publicationAdvanced Operating Systems and Kernel Applications
Subtitle of host publicationTechniques and Technologies
PublisherIGI Global
Number of pages17
ISBN (Print)9781605668505
StatePublished - 2009
Externally publishedYes

All Science Journal Classification (ASJC) codes

  • General Computer Science


Dive into the research topics of 'Exploiting disk layout and block access history for I/O prefetch'. Together they form a unique fingerprint.

Cite this