Cache refresh algorithm and method
AssigneeInternational Business Machines Corporation
InventorBrian Goodman
Life of this patent
Estimating the term…
Abstract
We present, in an exemplary embodiment of the present invention, a novel method for providing cache refresh within a finite time window (i.e., a time-box) with predictable accuracy and given constrained resources. Instead of refreshing the entire cache in a specified time window, we introduce an error. As used herein, the term “error” refers to a period of time. By introducing error, we effectively and dynamically widen the time-box to distribute the refresh activity.
Claims17
A method for determining an error time, comprising:
- identifying a cache size of a cache;
- determining a time-between-refresh;
- determining a size of a pool, wherein the pool comprises at least one process for refreshing at least one item;
- determining a refresh time based on the time to refresh one of the at least one item in the cache using one of the at least one process;
- and
- determining the error time based on the cache size, the time-between-refresh, the refresh time and the size of the pool.
A method for refreshing a cache, comprising:
- receiving a cache size, a time-between-refresh, and a pool size;
- refreshing a cache item in the cache;
- updating a refresh time to reflect the time taken to complete the step of refreshing;
- determining an error time based on the cache size, the time-between-refresh, the refresh time, and the pool size;
- and
- determining a next-refresh-time based on the error time.
A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform a method for determining an error time, the method comprising:
- identifying a cache size of a cache;
- determining a time-between-refresh;
- determining a size of a pool, wherein the pool comprises at least one process for refreshing at least one item;
- determining a refresh time based on the time to refresh one of the at least one item in the cache using one of the at least one process;
- and
- determining the error time based on the cache size, the time-between-refresh, the refresh time and the size of the pool.
A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform a method for refreshing a cache, the method comprising:
- receiving a cache size, a time-between-refresh, and a pool size;
- refreshing a cache item in the cache;
- updating a refresh time to reflect the time taken to complete the step of refreshing;
- determining an error time based on the cache size, the time-between-refresh, the refresh time, and the pool size;
- and
- determining a next-refresh-time based on the error time.
Dependencies are inferred from the claim text.