IP Library › Granted Patent US 7,934,069
Granted Patent B2
US 7,934,069 · App. 11/796,428 · Granted Apr 26, 2011

Enabling and disabling cache in storage systems

Assignee: Hewlett-Packard Development Company, L.P.
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 7,934,069
App. No.
11/796,428
Filed
Apr 27, 2007
Granted
Apr 26, 2011
Kind
B2
Examiner
DARE, RYAN A
Art Unit
2186
USPC
711/135
Abstract

Embodiments include methods, apparatus, and systems for enabling and disabling cache in storage systems. One embodiment includes a method that changes a time period for delaying host requests received at a cache of a storage device and converts the storage device from a cache enabled state to a cache disabled state while the storage device is online.

Claims (31)

1. A method, comprising:

incrementing a time period for delaying host requests received at a cache of a storage array until a rate of receiving new cache entries is less than a rate of flushing cache entries from the cache;

converting the storage array from a first state with the cache enabled to a second state with the cache disabled while the storage array remains online; and

increasing the time period for delaying host requests using one millisecond increments until a number of storage mapped (SM) table entries for the storage array begins a consistent decline.

2. The method of claim 1 further comprising, changing a parameter of the cache that increases a rate at which data is flushed from the cache.

3. The method of claim 1 further comprising, invalidating all read cache slots in the cache when a single write cache slot remains for the cache.

4. The method of claim 1 further comprising, converting the storage array from using asynchronous communication to using synchronous communication.

5. The method of claim 1 further comprising, setting the time period for delaying host requests to zero when a single write cache slot remains for the cache.

6. The method of claim 1 further comprising, periodically adjusting the time period for delaying the host requests to compensate for varied input/output (I/O) requests received at the storage array.

7. The method of claim 1 further comprising, increasing the time period for delaying host requests to enable data in the cache to drain.

8. A non-transitory computer readable medium having instructions for causing a computer to execute a method, comprising:

changing a time period for delaying host requests received at a cache of a storage device until a percentage full of the cache decreases;

converting the storage device from using a cache enabled state to using a cache disabled state while the storage device continues to transmit data to a storage array; and

increasing the time period for delaying host requests using one millisecond increments until a number of storage mapped (SM) table entries for the storage device begins a consistent decline.

9. The non-transitory computer readable medium of claim 8 further comprising, changing the time period to create conditions for a continuously descending trend line plotted in a graph of fullness of cache versus time.

10. The non-transitory computer readable medium of claim 8 further comprising, changing the time period to eliminate data waiting to be flushed from the cache.

11. The non-transitory computer readable medium of claim 8 further comprising, incrementing the time period using one millisecond increments.

12. The non-transitory computer readable medium of claim 8 further comprising, monitoring a number of cache slots in a write cache table of the cache while the time period is being incremented.

13. The non-transitory computer readable medium of claim 8 further comprising, reducing an amount of data waiting in the cache to be flushed without causing applications associated with the storage device to receive error messages or abort messages.

14. The non-transitory computer readable medium of claim 8 further comprising, receiving input from a user, the input specifying a time period for converting the storage device from the cache enabled state to the cache disabled state.

15. A disk array, comprising:

a first port that receives input/output (I/O) requests from a host;

a second port that sends the I/O requests to another disk array;

a processor that executes an algorithm to:

vary a time period for delaying host requests received at a cache of the disk array until a percentage full of the cache begins to decline;

alter the disk array from a cache enabled state to a cache disabled state while the disk array remains online for data transmission to the another disk array; and

increase the time period for delaying host requests using one millisecond increments until a number of storage mapped (SM) table entries for the disk array begins a consistent decline.

16. The storage device of claim 15 , wherein the cache is altered from a multi-slot write cache using asynchronous communication to a single-slot write cache using synchronous communication.

17. The storage device of claim 15 , wherein the another disk array is a virtualized external storage device behind the disk array.

18. The storage device of claim 15 , wherein the disk array is altered from the cache enabled state to the cache disabled state while maintaining data ordering and online data flow in the disk array.

19. The storage device of claim 15 , wherein the processor further executes the algorithm to dampen oscillations occurring over time between measurements of fullness of the cache.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2007
From: COCHRAN, ROBERT A.; ABOUELWAFA, AYMAN; LIPPS, ERIK A.
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 019312/0781 →
Continuity (1)
Related Publication 20080270692A1 · Oct 30, 2008