Browse Prior Art Database

A Sticky Bit Buffer

IP.com Disclosure Number: IPCOM000120199D
Original Publication Date: 1991-Mar-01
Included in the Prior Art Database: 2005-Apr-02
Document File: 1 page(s) / 45K

Publishing Venue

IBM

Related People

Emma, PG: AUTHOR [+5]

Abstract

Given a cache with a directory twice as large as needed to address the contents of the cache arrays, it is possible to identify lines that have a re-referencing pattern that indicates their candidacy for retention. Unfortunately, such a retention is made at the expense of other lines in the same congruence class and when all the lines in a congruence class are indicated as eligible for retention there is no value to the retention indication.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 79% of the total text.

A Sticky Bit Buffer

      Given a cache with a directory twice as large as needed to
address the contents of the cache arrays, it is possible to identify
lines that have a re-referencing pattern that indicates their
candidacy for retention. Unfortunately, such a retention is made at
the expense of other lines in the same congruence class and when all
the lines in a congruence class are indicated as eligible for
retention there is no value to the retention indication.

      If the cache has an associated global buffer from which lines
can also be accessed, and this buffer is shared across congruence
classes, then the candidacy for being retained in such a buffer can
be derived from the hit within the directory that is a miss in the
array.

      The algorithm to implement the approach is:
1.  A cache miss is a miss from both the cache proper or from the
associated buffer.
2.  On a cache miss, if the line address is found within the extended
directory of the cache a sticky bit (STKB) is associated with the
directory entry.
3.  If a line with a STKB set ages out of cache it will be
placed in the buffer replacing the line in that buffer which is LRU.
4.  The extended directory will show that the line is in the buffer
and its position in the buffer.  If the line is re-referenced while
it is in the buffer, it will be placed in the cache proper and the
cache line that is replaced will be handled as appropriate.
5.  If a line ages out of the buffer, the extended...