METHOD OF EFFICIENTLY CHOOSING A CACHE ENTRY FOR CASTOUT
First Claim
Patent Images
1. A method for identifying a data entry of a cache for cast out, comprising:
- defining a sample of data entries of the cache as a linked-list chain of data entries, wherein the sample is comprised of “
n”
data entries and the chain is comprised of “
m”
data entries, where m is greater than or equal to n;
wherein the sample is comprised of a designated scan starting data entry and (n−
1) data entries subsequent to the starting data entry;
evaluating one or more data entries in the linked-list chain in relation to one or more predetermined characteristics;
identifying at least recently used data entry for cast out; and
identifying a new data entry for addition to the cache and adding the identified new data entry to the cache after assigning the new data entry a control block following cast out of the least recently used data entry;
wherein the linked-list chain comprising in use control blocks of data entries of the cache having timestamps, and evaluating one or more data entries further comprises comparing the predetermined characteristics being timestamps of each data entry in the sample and ranking each data entry in accordance with its respective timestamp;
further comprising and prior to the step of evaluating, dividing data entries of the cache into one or more logical subpools for consistency in size in relation to size of the data entries in the sample.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention relates generally to a method and system for efficiently identifying a cache entry for cast out in relation to scanning a predetermined sampling subset of pseudo-randomly sampled cached entries and determining a least recently used (LRU) entry from the scanned cached entries subset, thereby avoiding a comprehensive review of all of or groups of the cached entries in the cache at any instant. In one or more implementations, a subset of the data entries in a cache are randomly sampled, assessed by timestamp in a doubly-linked listing and a least recently used data entry to cast out is identified.
46 Citations
10 Claims
-
1. A method for identifying a data entry of a cache for cast out, comprising:
-
defining a sample of data entries of the cache as a linked-list chain of data entries, wherein the sample is comprised of “
n”
data entries and the chain is comprised of “
m”
data entries, where m is greater than or equal to n;
wherein the sample is comprised of a designated scan starting data entry and (n−
1) data entries subsequent to the starting data entry;evaluating one or more data entries in the linked-list chain in relation to one or more predetermined characteristics; identifying at least recently used data entry for cast out; and identifying a new data entry for addition to the cache and adding the identified new data entry to the cache after assigning the new data entry a control block following cast out of the least recently used data entry;
wherein the linked-list chain comprising in use control blocks of data entries of the cache having timestamps, and evaluating one or more data entries further comprises comparing the predetermined characteristics being timestamps of each data entry in the sample and ranking each data entry in accordance with its respective timestamp;
further comprising and prior to the step of evaluating, dividing data entries of the cache into one or more logical subpools for consistency in size in relation to size of the data entries in the sample. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A data system having an instantiable computer program product for identifying a data entry of a cache coupled with one or more cache clients for cast out from one or more data entries in a cache containing from a data storage device of a data system having a centralized processing unit (CPU), comprising a computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions including:
- a first executable portion having instructions being capable of;
defining a sample of data entries of the cache as a linked-list chain of data entries, wherein the linked-list chain is a doubly-link list chain comprising of in use control blocks of data entries of the cache having timestamps, and the step of evaluating one or more data entries further comprises comparing the predetermined characteristics being timestamps of each data entry in the sample and ranking each data entry in accordance with its respective timestamp, wherein the sample is comprised of “
n”
data entries and the chain is comprised of “
m”
data entries, where m is greater than or equal to n;
wherein the sample is comprised of a designated scan starting data entry and (n−
1) data entries subsequent to the starting data entry;
wherein the cache is operably coupled with one or more cache items.evaluating one or more data entries in the linked-list chain in relation to one or more predetermined characteristics; identifying a least recently used data entry for cast out; and identifying a new data entry for addition to the cache and adding the identified new data entry to the cache after assigning the new data entry a control block following cast out of the least recently used data entry. - View Dependent Claims (8, 9)
- a first executable portion having instructions being capable of;
-
10. A computerized method for identifying a cache data entry for cast out from one or more data entries in a cache containing from a data storage device of a data system having a centralized processing unit (CPU), memory, an operating system, and a data management system, using one or more application programs having program instructions comprising the steps of:
-
defining a sample of data entries of a cache in relation to a sample size; defining the sample as a linked-list chain of data entries; assessing one or more characteristics of the data entries in the linked-list chain;
wherein the linked-list chain is a doubly-link list chain comprising in use control blocks of data entries of the cache having timestamps, and the step of assessing one or more data entries further comprises comparing the characteristics being timestamps of each data entry in the sample and ranking each data entry in accordance with its respective timestamp;identifying a least recently used data entry for cast out; casting out the identified least recently used data entry; and identifying a new data entry for addition to the cache and adding the identified new data entry to the cache after assigning the new data entry a control block following cast out of the least recently used data entry.
-
Specification