IP Library › Granted Patent US 8,850,122
Granted Patent B2
US 8,850,122 · App. 13/306,996 · Granted Sep 30, 2014

Cache optimization via predictive cache size modification

Inventors: Gregory Chockler (Haifa, IL); Guy Laden (Jaffa, IL); Ýmir Vigfússon (Reykjavik, IS)
Assignee: International Business Machines Corporation
G06F12/0866
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,850,122
App. No.
13/306,996
Granted
Sep 30, 2014
Kind
B2
Abstract

Systems and methods for cache optimization, the method comprising monitoring cache access rate for one or more cache tenants in a computing environment, wherein a first cache tenant is allocated a first cache having a first cache size which may be adjusted; determining a cache profile for at least the first cache over one or more time intervals according to data collected during the monitoring, analyzing the cache profile for the first cache to determine an expected cache usage model for the first cache; and analyzing the cache usage model and factors related to cache efficiency for the one or more cache tenants to dictate one or more constraints that define boundaries for the first cache size.

Claims (33)

1. A computer-implemented cache optimization method comprising:

monitoring cache access rate for one or more cache tenants in a computing environment, wherein a first cache tenant is allocated a first cache having a first cache size which may be adjusted;

determining a cache profile for at least the first cache over one or more time intervals according to data collected during the monitoring,

analyzing the cache profile for the first cache to determine an expected cache usage model for the first cache; and

analyzing the cache usage model and factors related to cache efficiency for the one or more cache tenants to dictate one or more constraints that define boundaries for the first cache size.

2. The method of claim 1 , wherein the cache access rate is the cache hit rate.

3. The method of claim 1 , wherein the cache access rate is the cache miss rate.

4. The method of claim 1 , wherein the first cache size is adjusted in real time as the expected cache access rate changes.

5. The method of claim 1 , wherein the cache profile provides an estimation of cache access rate for the first cache according to possible changes in the first cache size as projected by a statistical analysis of data collected during the monitoring.

6. The method of claim 1 further comprising aggregating the data collected over a plurality of time intervals to provide a better estimation of how the cache profile for the first cache changes over time.

7. The method of claim 1 wherein the model would indicate the cache access rate in relation to changes to the first cache size.

8. The method of claim 1 wherein factors related to cache efficiency comprise overall cache efficiency in the computing environment.

9. The method of claim 1 wherein factors related to cache efficiency comprise individual cache efficiency for the one or more cache tenants.

10. The method of claim 1 wherein the cache usage model for the first cache tenant is constructed based on number of cache accesses to the first cache as a function of the first cache size.

11. The method of claim 1 wherein the one or more cache allocation constraints are generated in form of a system of linear inequalities to satisfy target performance goals for the one or more cache tenants.

12. The method of claim 1 wherein the one or more cache allocation constraints are utilized to control changes in cache size for the one or more caches in the computing system based on quality of service requirements associated with corresponding one or more cache tenants.

13. A system for cache optimization, the system comprising:

one or more cache mechanisms;

a profiler for monitoring cache access rate for one or more cache tenants in a computing environment, wherein a first cache tenant is allocated a first cache having a first cache size which may be adjusted;

the profiler determining a cache profile for at least the first cache over one or more time intervals according to data collected during the monitoring;

an assembler analyzing the cache profile for the first cache to determine an expected cache usage model for the first cache; and

a partitioner for analyzing the cache usage model and factors related to cache efficiency for the one or more cache tenants to dictate one or more constraints that define boundaries for the first cache size.

14. The system of claim 13 , wherein the one or more cache allocation constraints are generated in form of a system of linear inequalities to satisfy target performance goals for the one or more cache tenants.

15. The system of claim 13 , wherein the cache usage model for the first cache tenant is constructed based on number of cache accesses to the first cache as a function of the first cache size.

16. The system of claim 13 , wherein the first cache size is adjusted in real time as the expected cache access rate changes.

17. The system of claim 13 , wherein the cache profile provides an estimation of cache access rate for the first cache according to possible changes in the first cache size as projected by a statistical analysis of data collected during the monitoring.

18. A computer program product comprising a non-transitory data storage medium having a computer readable program, wherein the computer readable program when executed on a computer causes the computer to:

monitor cache access rate for one or more cache tenants in a computing environment, wherein a first cache tenant is allocated a first cache having a first cache size which may be adjusted;

determine a cache profile for at least the first cache over one or more time intervals according to data collected during the monitoring,

analyze the cache profile for the first cache to determine an expected cache usage model for the first cache; and

analyze the cache usage model and factors related to cache efficiency for the one or more cache tenants to dictate one or more constraints that define boundaries for the first cache size.

19. The computer program product of claim 18 , wherein the cache profile provides an estimation of cache access rate for the first cache according to possible changes in the first cache size as projected by a statistical analysis of data collected during the monitoring.

20. The computer program product of claim 18 , wherein the cache usage model for the first cache tenant is constructed based on number of cache accesses to the first cache as a function of the first cache size.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2011
From: CHOCKLER, GREGORY; LADEN, GUY; VIGFUSSON, YMIR
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 027297/0964 →
Continuity (1)
Related Publication 20130138889A1 · May 30, 2013