Real-time data cache size adjustment in a server computer
First Claim
1. A method of operating a data cache, comprising the steps of:
- initializing a flag variable OK-- TO-- INCREASE to TRUE;
periodically determining a moving average hit ratio Ravg for the data cache over a first number of preceding periods;
for the following cases of the determined value of Ravg, performing the corresponding steps as follows;
0≦
Ravg ≦
50%;
if the size of the data cache is less than a maximum size Smax, then increasing the number of buffers in the data cache to the lesser of twice the number of buffers in the cache during the present period and a maximum number Nht of buffers contained in the data cache when the data cache size is Smax ;
50%<
Ravg ≦
80%;
(a) determining the data cache hit ratio for each of a second number of preceding periods;
(b) setting the OK-- TO-- INCREASE flag to FALSE if the hit ratio over the second number of preceding periods has not substantially changed;
(c) setting the OK-- TO-- INCREASE flag to TRUE if the hit ratio has decreased over any of the second number of preceding periods;
(d) if the OK-- TO-- INCREASE flag is TRUE and the size of the data cache is less than Smax, then increasing the number of buffers in the data cache to the lesser of 1.25 times the current number of buffers and Nht ;
80%<
Ravg ≦
90%;
(a) determining the data cache hit ratio for each of a third number of preceding periods;
(b) setting the OK-- TO-- INCREASE flag to FALSE if the hit ratio over the third number of preceding periods has not increased monotonically;
(c) setting the OK-- TO-- INCREASE flag to TRUE if the hit ratio has decreased over any of the third number of preceding periods;
(d) if the OK-- TO-- INCREASE flag is TRUE and the size of the data cache is less than Smax, then increasing the number of buffers in the data cache to the lesser of 1.10 times the current number of buffers and Nht ; and
90%<
Ravg ≦
100%;
leaving the number of buffers in the data cache unchanged.
2 Assignments
0 Petitions
Accused Products
Abstract
In a method and system for dynamically improving the performance of a server in a network, a tuning system monitors a workload of the server in real time, monitors a set of internal performance characteristics of the server in real time, and monitors a set of adjustable server parameters of the server in real time. The workload of the server may include the frequency and type of service requests received by the server from clients in the network. The internal server performance characteristics may include, for example, a data cache hit ratio of a data cache in the server. The set of server parameters may include, for example, the overall data cache size or the data cache geometry of the server. The tuning system periodically alters one or more of the set of adjustable server parameters as a function of the workload and internal performance characteristics of the server. Since the tuning system is continuously monitoring workload and performance characteristics of the server and altering the server parameters accordingly, the effectiveness of a given change in the server parameters is reflected in the next set of monitored workload and performance values.
-
Citations
1 Claim
-
1. A method of operating a data cache, comprising the steps of:
-
initializing a flag variable OK-- TO-- INCREASE to TRUE; periodically determining a moving average hit ratio Ravg for the data cache over a first number of preceding periods; for the following cases of the determined value of Ravg, performing the corresponding steps as follows; 0≦
Ravg ≦
50%;
if the size of the data cache is less than a maximum size Smax, then increasing the number of buffers in the data cache to the lesser of twice the number of buffers in the cache during the present period and a maximum number Nht of buffers contained in the data cache when the data cache size is Smax ;50%<
Ravg ≦
80%;
(a) determining the data cache hit ratio for each of a second number of preceding periods;
(b) setting the OK-- TO-- INCREASE flag to FALSE if the hit ratio over the second number of preceding periods has not substantially changed;
(c) setting the OK-- TO-- INCREASE flag to TRUE if the hit ratio has decreased over any of the second number of preceding periods;
(d) if the OK-- TO-- INCREASE flag is TRUE and the size of the data cache is less than Smax, then increasing the number of buffers in the data cache to the lesser of 1.25 times the current number of buffers and Nht ;80%<
Ravg ≦
90%;
(a) determining the data cache hit ratio for each of a third number of preceding periods;
(b) setting the OK-- TO-- INCREASE flag to FALSE if the hit ratio over the third number of preceding periods has not increased monotonically;
(c) setting the OK-- TO-- INCREASE flag to TRUE if the hit ratio has decreased over any of the third number of preceding periods;
(d) if the OK-- TO-- INCREASE flag is TRUE and the size of the data cache is less than Smax, then increasing the number of buffers in the data cache to the lesser of 1.10 times the current number of buffers and Nht ; and90%<
Ravg ≦
100%;
leaving the number of buffers in the data cache unchanged.
-
Specification