Title :
Optimal partitioning of cache memory
Author :
Stone, Harold S. ; Turek, John ; Wolf, Joel L.
Author_Institution :
IBM Thomas J. Watson Res. Center, Yorktown Heights, NY, USA
fDate :
9/1/1992 12:00:00 AM
Abstract :
A model for studying the optimal allocation of cache memory among two or more competing processes is developed and used to show that, for the examples studied, the least recently used (LRU) replacement strategy produces cache allocations that are very close to optimal. It is also shown that when program behavior changes, LRU replacement moves quickly toward the steady-state allocation if it is far from optimal, but converges slowly as the allocation approaches the steady-state allocation. An efficient combinatorial algorithm for determining the optimal steady-state allocation, which, in theory, could be used to reduce the length of the transient, is described. The algorithm generalizes to multilevel cache memories. For multiprogrammed systems, a cache-replacement policy better than LRU replacement is given. The policy increases the memory available to the running process until the allocation reaches a threshold time beyond which the replacement policy does not increase the cache memory allocated to the running process
Keywords :
buffer storage; storage allocation; cache allocations; cache memory; cache-replacement policy; combinatorial algorithm; competing processes; least recently used; multilevel cache memories; multiprogrammed systems; optimal allocation; optimal partitioning; program behavior; replacement strategy; running process; steady-state allocation; threshold time; Algorithm design and analysis; Cache memory; Mathematical model; Steady-state; Terminology;
Journal_Title :
Computers, IEEE Transactions on