Issue No. 11 - November (1996 vol. 22)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.553701
<p><b>Abstract</b>—Given <it>N</it> request streams and <it>L</it>≤<it>N</it> LRU caches, the <it>cache assignment problem</it> asks to which cache each stream should be assigned in order to minimize the overall miss rate. An efficient solution to this problem is provided, based on characterizing each stream using the <it>stack reference model</it> and characterizing the interaction of the streams using a <it>bursty stream model</it>. It is shown that for Bernoulli (purely random) mixing of streams, the optimal cache assignment is to have one cache per stream. But in practice streams are mixed in a way that is much "burstier" than can be represented by the Bernoulli model. Therefore a method is presented for superposition of bursty streams. The performance of the methods developed for bursty stream superposition and cache assignment are tested using trace data obtained from the database system DB2. The resulting cache assignment recommendations are then applied to the DB2 system, and considerable performance improvement is found to result.</p>
Cache, LRU, memory hierarchy, stack depth processes, database performance.
Ted G. Messinger, Hanoch Levy, Robert J.T. Morris, "The Cache Assignment Problem and Its Application to Database Buffer Management", IEEE Transactions on Software Engineering, vol. 22, no. , pp. 827-838, November 1996, doi:10.1109/32.553701