Application-Controlled File Caching Policies
We consider how to improve the performance of file caching by allowing
user-level control over file cache replacement decisions. We use
two-level cache management: the kernel allocates physical pages to
individual applications (allocation), and each application is
responsible for deciding how to use its physical pages (replacement). Previous work on two-level memory management has
focused on replacement, largely ignoring allocation.
The main contribution of this paper is our solution to the allocation
problem. Our solution allows processes to manage their own cache
blocks, while at the same time maintains the dynamic allocation of
cache blocks among processes. Our solution makes sure that good
user-level policies can improve the file cache hit ratios of the
entire system over the existing replacement approach. We evaluate our
scheme by trace-based simulation, demonstrating that it leads to
significant improvements in hit ratios for a variety of applications.
- This technical report has been published as
- Application-Controlled File Caching Policies. Kai Li, Edward
W. Felten and Pei Cao, Proc. of USENIX Summer
1994 Technical Conference, pp. 171-182, 1994.