US4463424A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method for dynamically allocating LRU/MRU managed memory among concurrent sequential processes
Assignee: International Business Machines Corp
•
Filing: 1983-10-21
•
Granted: 1984-07-31
•
Expires: 2003-10-21
Abstract
Abstract Short traces of consecutive CPU references to storage are accumulated and processed to ascertain hit ratio as a function of cache size. From this determination, an allocation of cache can be made. Because this determination requires minimal processing time, LRU-referenceable memory space among concurrently executing sequential processes is used dynamically by a CPU cache manager.
Inventors
- 👤 Richard L. Mattson
- 👤 Juan A. Rodriguez-Rosell
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-23 13:42
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/12; G06F12/121; G06F12/123; G06F12/0802; G06F12/0806; G06F12/0842
Claims Analysis
Total Claims: 6
Claim 1
Independent Claim
132 words
A CPU-implementable method for dynamically adjusting the portions of LRU-referenceable memory space shared among concurrently executing sequential processes in which a supervisory process is invoked to manage the memory referencing, wherein the steps include: (a) determining an optimal space allocation among the processes by (1) accumulating a trace of consecutive references to items stored in the LRU memory space; (2) partitioning the space over a range of predetermined sizes; (3) ascertaining the hit/miss ratios from the accumulated trace as a function of LRU memory space partition sizes; and (4) responsive to each trace reference, LRU ordering the items in the partitioned space and adjusting for overflow among the partitions; and (b) reallocating the partitions among the concurrent processes according to and in overlapped relation with the determination step by the supervisory process.
Claim 2
Dependent Claim
132 words
A CPU-implementable method for dynamically adjusting the portions of LRU-referenceable memory space shared among concurrently executing sequential processes in which a supervisory process is invoked to manage the memory referencing, wherein the steps include: (a) determining an optimal space allocation among the processes by (1) accumulating a trace of consecutive references to items stored in the LRU memory space; (2) partitioning the space over a range of predetermined sizes; (3) ascertaining the hit/miss ratios from the accumulated trace as a function of LRU memory space partition sizes; and (4) responsive to each trace reference, LRU ordering the items in the partitioned space and adjusting for overflow among the partitions; and (b) reallocating the partitions among the concurrent processes according to and in overlapped relation with the determination step by the supervisory process.
Claim 3
Dependent Claim
197 words
A machine-implemented method for dynamically selecting pageable groups of data and associated cache sizes with respect to one or more caches of a CPU-accessible demand paging hierarchical storage system, said system having an LRU/MRU page replacement policy, including the erasure of cache stored items, the cache being shared among concurrently executing sequential processes in which a supervisory process is invoked to manage the memory references, the method steps include: (a) determining the optimal space allocation among the processes by (1) accumulating a trace of consecutive references to items stored in the cache, (2) processing the traces to obtain hit/miss ratios as a function of q pageable groups and p cache sizes, said processing step including the step of partitioning an LRU page stack into p+1 equivalence classes, all pages in any given partition having the same stack distance, (3) arranging the groups of pageable data responsive to each reference by ordering the items in the cache and adjusting for overflow so as to maintain the highest hit ratio as a function of cache size; and (b) reallocating the cache among the concurrent processes according to and in overlapped relation with the determination step by the supervisory process.
Claim 4
Dependent Claim
197 words
A machine-implemented method for dynamically selecting pageable groups of data and associated cache sizes with respect to one or more caches of a CPU-accessible demand paging hierarchical storage system, said system having an LRU/MRU page replacement policy, including the erasure of cache stored items, the cache being shared among concurrently executing sequential processes in which a supervisory process is invoked to manage the memory references, the method steps include: (a) determining the optimal space allocation among the processes by (1) accumulating a trace of consecutive references to items stored in the cache, (2) processing the traces to obtain hit/miss ratios as a function of q pageable groups and p cache sizes, said processing step including the step of partitioning an LRU page stack into p+1 equivalence classes, all pages in any given partition having the same stack distance, (3) arranging the groups of pageable data responsive to each reference by ordering the items in the cache and adjusting for overflow so as to maintain the highest hit ratio as a function of cache size; and (b) reallocating the cache among the concurrent processes according to and in overlapped relation with the determination step by the supervisory process.
Claim 5
Dependent Claim
37 words
A machine-implemented method according to claim 2, wherein the determination step requires no more than (2p+1) items requiring movement, alteration, or scanning per referenced item and no more than (p+1) q computations within each predetermined time period.
Claim 6
Dependent Claim
86 words
A machine-implemented method according to claim 3, wherein: (a) the step of partitioning an LRU stack into equivalence classes is a function of the consecutive addition of the maximum predetermined group sizes; and (b) a reference to an item for a given cache size is registered as a miss if the group number of an item i in an LRU stack is less than the group (position) number and is registered as a hit for all cache capacities equal to or greater than the group number.
References Cited (Backward Citations)
US4310883A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1987-07-31 | 1988-01-30 | 1988-07-31 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1991-07-31 | 1992-01-30 | 1992-07-31 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 1995-07-31 | 1996-01-30 | 1996-07-31 | $7700.00 | Window Closed / Lapsed |