Abstract
Program-counter-based (PC-based) prediction techniques have been shown to be highly effective and are widely used in computer architecture design. In this paper, we explore the opportunity and viability of applying PC-based prediction to operating systems design, in particular, to optimize buffer caching. We propose a Program-Counter-based Classification (PCC) technique for use in pattern-based buffer caching that allows the operating system to correlate the I/O operations with the program context in which they are issued via the program counters of the call instructions that trigger the I/O requests. This correlation allows the operating system to classify I/O access pattern on a per-PC basis which achieves significantly better accuracy than previous per-file or per-application classification techniques. PCC also performs classification more quickly as per-PC pattern just needs to be learned once. We evaluate PCC via trace-driven simulations and an implementation in Linux, and compare it to UBM, a state-of-the-art pattern-based buffer replacement scheme. The performance improvements are substantial: the hit ratio improves by as much as 29.3% (with an average of 13.8%), and the execution time is reduced by as much as 29.0% (with an average of 13.7%).
Original language | English (US) |
---|---|
Pages | 395-408 |
Number of pages | 14 |
State | Published - 2004 |
Event | 6th Symposium on Operating Systems Design and Implementation, OSDI 2004 - San Francisco, United States Duration: Dec 6 2004 → Dec 8 2004 |
Conference
Conference | 6th Symposium on Operating Systems Design and Implementation, OSDI 2004 |
---|---|
Country/Territory | United States |
City | San Francisco |
Period | 12/6/04 → 12/8/04 |
ASJC Scopus subject areas
- Information Systems
- Computer Networks and Communications
- Hardware and Architecture