Information Technology Reference
In-Depth Information
Chapter 6
Application of both Temporal
and Spatial Localities
in the Management of
Kernel Buffer Cache
Song Jiang
Wayne State University, USA
abStract
As the hard disk remains as the mainstream on-line storage device, it continues to be the performance
bottleneck of data-intensive applications. One of existing most effective solutions to ameliorate the bottle-
neck is to use the buffer cache in the OS kernel to achieve two objectives: reduction of direct access of
on-disk data and improvement of disk performance. These two objectives can be achieved by applying
both temporal locality and spatial locality in the management of the buffer cache. Traditionally only
temporal locality is exploited for the purpose, and spatial locality, which refers to the on-disk sequen-
tiality of requested blocks, is largely ignored. As the throughput of access of sequentially-placed disk
blocks can be an order of magnitude higher than that of access to randomly-placed blocks, the missing
of spatial locality in the buffer management can cause the performance of applications without dominant
sequential accesses to be seriously degraded. In the chapter, we introduce a state-of-the-art technique
that seamlessly combines these two locality properties embedded in the data access patterns into the
management of the kernel buffer cache management. After elaboration on why the spatial locality is
needed in addition to the temporal locality, we detail a framework, DULO (DUal LOcality), in which
these two properties are taken account of simultaneously. A prototype implementation of DULO in the
Linux kernel as well as some experiment results are presented, showing that DULO can significantly
increases disk I/O throughput for real-world applications such as Web server, TPC benchmark, file system
benchmark, and scientific programs. It reduces their execution times by as much as 53%. We conclude
the chapter by identifying and encouraging a new direction for research and practice on the improve-
ment of disk I/O performance, which is to expose more disk-specific data layout and access patterns to
the upper-level system software for disk-oriented policies.
Search WWH ::




Custom Search