Download:
|
by Yuanyuan Zhou, Zhifeng Chen, Kai Li, Senior Member
IEEE Transactions on Parallel and Distributed Systems
http://carmen.cs.uiuc.edu/~zchen9/paper/TPDS-final.ps
Add To MetaCart
Abstract:
Abstract---Buffer caches are commonly used in servers to reduce the number of slow disk accesses or network messages. These buffer caches form a multilevel buffer cache hierarchy. In such a hierarchy, second-level buffer caches have different access patterns from first-level buffer caches because accesses to a second-level are actually misses from a first-level. Therefore, commonly used cache management algorithms such as the Least Recently Used (LRU) replacement algorithm that work well for single-level buffer caches may not work well for second-level. This paper investigates multiple approaches to effectively manage second-level buffer caches. In particular, it reports our research results in 1) second-level buffer cache access pattern characterization, 2) a new local algorithm called Multi-Queue (MQ) that performs better than nine tested alternative algorithms for second-level buffer caches, 3) a set of global algorithms that manage a multilevel buffer cache hierarchy globally and significantly improve second-level buffer cache hit ratios over corresponding local algorithms, and 4) implementation and evaluation of these algorithms in a real storage system connected with commercial database servers (Microsoft SQL Server and Oracle) running industrial-strength online transaction processing benchmarks. Index Terms---Cache memories, storage hierarchy, storage management.
Citations
|
723
|
Improving Direct-Mapped Cache Performance by the Addition of a Small Fully-Associative Cache and Prefetch Buffers
– Jouppi
- 1990
|
|
666
|
Amortized efficiency of list update and paging rules
– Sleator, Tarjan
- 1985
|
|
572
|
Cache memories
– Smith
- 1982
|
|
253
|
Unix disk access patterns
– Ruemmler, Wilkes
- 1993
|
|
227
|
The lru-k page replacement algorithm for database disk buffering
– O’Neil, O’Neil, et al.
- 1993
|
|
211
|
Evaluation techniques for storage hierarchies
– Mattson, Gecsei, et al.
- 1970
|
|
132
|
2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm
– Johnson, Shasha
- 1994
|
|
115
|
Data Cache Management Using Frequency-Based Replacement
– Robinson, Devarakonda
- 1990
|
|
94
|
Multi-level Caching in Distributed File Systems or Your cache ain’t nuthin’ but trash
– Muntz, Honeyman
- 1992
|
|
87
|
ARC: A self-tuning, low overhead replacement cache
– Megiddo, Modha
- 2003
|
|
76
|
Towards higher disk head utilization: extracting free bandwidth from busy disk drives
– Lumb, Schindler, et al.
- 2000
|
|
71
|
A pipelined, shared resource MIMD computer
– Smith
- 1978
|
|
69
|
My cache or yours? making storage more exclusive
– Wong, Wilkes
- 2002
|
|
64
|
On the Existence of a Spectrum of Policies That Subsumes the Least Recently Used (LRU) and Least Frequently Used (LFU) Policies
– Lee, Choi, et al.
- 1999
|
|
64
|
The multi-queue replacement algorithm for second level buffer caches
– Zhou, Philbin, et al.
- 2001
|
|
62
|
Efficient Cooperative Caching Using Hints
– Sarkar, Hartman
- 1996
|
|
59
|
Disk cache-miss ratio analysis and design considerations
– Smith
- 1985
|
|
49
|
Disk Cache Replacement Policies for Network Fileservers
– Willick, Eager, et al.
- 1993
|
|
40
|
An Inter-Reference Gap Model for Temporal Locality in Program Behavior
– Phalke, Gopinath
- 1995
|
|
35
|
A low-overhead high-performance unified buffer management scheme that exploits sequential and looping references
– KIM, CHOI, et al.
- 2000
|
|
35
|
Organization and Performance of a Two-Level Virtual-Real Cache Hierarchy
– Wang, Baer, et al.
- 1989
|
|
31
|
A modeling study of the TPC-C benchmark
– Leutenegger, Dias
- 1993
|
|
29
|
Experiences with VI Communication for Database Storage
– Zhou, Bilas, et al.
- 2002
|
|
27
|
Distance string models for program behavior
– Spirn
- 1976
|
|
24
|
Analysis of the generalized clock buffer replacement scheme for database transaction processing
– Nicola, Dan, et al.
- 1992
|
|
19
|
A trace-driven analysis of disk working set sizes
– Ruemmler, Wilkes
- 1993
|
|
19
|
Simplifying Distributed File Systems Using a Shared Logical Disk
– Shillner, Felten
- 1996
|
|
16
|
Efficient Cooperative Caching Using Hints
– Sarkar, Hartman
- 1996
|
|
9
|
An Inter-Reference Gap Model for Temporal Locality
– Phalke, Gopinath
- 1995
|
|
7
|
A Modeling Study of the TPC-C
– Leutenegger, Dias
- 1993
|
|
5
|
Properties of Storage Hierarchy Systems with Multiple Page Sizes and Redundant Data
– Lam, Madnick
- 1979
|
|
2
|
Memory Management for Networked Servers
– Zhou
- 2000
|