IP Library Granted Patent US 10,073,625
Granted Patent B2
US 10,073,625 · App. 14/989,560 · Granted Sep 11, 2018

Variable-RPM hard disk drive control

Inventors: Cyril Guyot (San Jose, CA); Mohammed Ghiath Khatib (Santa Clara, CA); Adam C. Manzanares (San Jose, CA); Lluis Pamies-Juarez (San Jose, CA)
Assignee: HGST Netherlands B.V.
G06F3/0608G06F3/0653G06F3/0689G11B19/26G06F1/3203
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 10,073,625
App. No.
14/989,560
Granted
Sep 11, 2018
Kind
B2
Abstract

The present disclosure relates to a system and methods of controlling a system of storage devices. In particular, the present disclosure relates to methods of controlling peak power and energy consumption in storage systems due to storage devices while maintaining data availability. The system implements a method for maintaining data availability in a storage subsystem by determining a plurality of storage devices to include in a fixed set of storage devices based on a fault tolerance system. The storage devices included in the fixed set are prevented from transitioning between RPM spin modes. The method further involves controlling peak power and energy consumed by the storage subsystem which may include transitioning the storage devices not included in the fixed set from a high RPM operational mode to a low RPM operational mode to reduce peak power and energy consumption.

Claims (64)

1. A system comprising:

one or more processors; and

a memory storing instructions that, when executed, cause the one or more processors to:

determine two or more storage groups of a storage subsystem, each storage group from the two or more storage groups comprising a plurality of storage devices;

determine a first plurality of storage devices from among the storage devices of the two or more storage groups to include in a fixed set based on a fault tolerance scheme such that all storage devices in the fixed set are available for input/output (I/O) requests, the fixed set comprising a subset of the storage subsystem having information sufficient to restore all data stored in the storage subsystem without requiring data from remaining storage devices in the storage subsystem not included in the fixed set, wherein the instructions cause the one or more processors to prevent all storage devices of the fixed set from transitioning between operational modes;

determine an I/O workload of an identified storage device in the remaining storage devices in the storage subsystem not included in the fixed set;

determine whether the I/O workload meets a threshold; and

responsive to determining the threshold has been met, transition an operational mode of the identified storage device.

2. The system of claim 1 , wherein the operational mode of the identified storage device is one of a low revolutions per minute (RPM) spin speed mode or a high RPM spin speed mode.

3. The system of claim 1 , wherein the fault tolerance scheme comprises one of replication or erasure coding.

4. The system of claim 1 , wherein the instructions further cause the one or more processors to:

measure power consumed by the storage subsystem;

determine whether the power consumed by the storage subsystem reaches a power threshold; and

responsive to determining that the power threshold has been reached, transition an operational mode of a storage device in the remaining storage devices in the storage subsystem not included in the fixed set.

5. The system of claim 1 , wherein the instructions further cause the one or more processors to:

determine whether the identified storage device has reached a device transition threshold; and

responsive to determining the device transition threshold has been reached, temporarily disable transitioning of the identified storage device.

6. The system of claim 5 , wherein the instructions further cause the one or more processors to:

determine whether a fixed set transition threshold has been reached; and

responsive to determining the fixed set transition threshold has been reached, determine a second plurality of storage devices in the storage subsystem to include in the fixed set.

7. The system of claim 6 , wherein to determine whether the fixed set transition threshold has been reached, the instructions cause the one or more processors to determine whether a specified amount of time has elapsed since the first plurality of storage devices were included in the fixed set.

8. The system of claim 6 , wherein to determine whether the fixed set transition threshold has been reached, the instructions cause the one or more processors to determine whether a specified number of transitions by the remaining storage devices in the storage subsystem not included in the fixed set has accumulated.

9. The system of claim 6 , wherein to determine whether the fixed set transition threshold has been reached, the instructions cause the one or more processors to determine whether a specified number of storage devices of the remaining storage devices in the storage subsystem not included in the fixed set have been temporarily disabled.

10. A computer-implemented method comprising:

determining two or more storage groups of a storage subsystem, each storage group from the two or more storage groups comprising a plurality of storage devices;

determining a first plurality of storage devices from among the storage devices of the two or more storage groups to include in a fixed set based on a fault tolerance scheme such that all storage devices in the fixed set are available for input/output (I/O) requests, the fixed set comprising a subset of the storage subsystem having information sufficient to restore all data stored in the storage subsystem without requiring data from remaining storage devices in the storage subsystem not included in the fixed set;

preventing all storage devices of the fixed set from transitioning between operational modes;

determining an I/O workload of an identified storage device in the remaining storage devices in the storage subsystem not in the fixed set;

determining whether the I/O workload satisfies a threshold; and

responsive to determining the threshold has been satisfied, transitioning an operational mode of the identified storage device.

11. The method of claim 10 , wherein the operational mode of the identified storage device is one of a low revolutions per minute (RPM) spin speed mode or a high RPM spin speed mode.

12. The method of claim 10 , further comprising:

measuring power consumed by the storage subsystem;

determining whether the power consumed by the storage subsystem reaches a power threshold; and

responsive to determining that the power threshold has been reached, transitioning an operational mode of a storage device in the remaining storage devices in the storage subsystem not included in the fixed set.

13. The method of claim 10 , further comprising:

determining whether the identified storage device has reached a device transition threshold; and

responsive to determining the device transition threshold has been reached, temporarily disabling transitioning of the identified storage device.

14. The method of claim 13 , further comprising:

determining whether a fixed set transition threshold has been reached; and

responsive to determining the fixed set transition threshold has been reached, determining a second plurality of storage devices in the storage subsystem to include in the fixed set.

15. The method of claim 14 , wherein determining the fixed set transition threshold has been reached comprises determining whether a specified amount of time has elapsed since the first plurality of storage devices were included in the fixed set.

16. The method of claim 14 , wherein determining the fixed set transition threshold has been reached comprises determining whether a specified number of transitions by the remaining storage devices in the storage subsystem not included in the fixed set has accumulated.

17. The method of claim 14 , wherein determining the fixed set transition threshold has been reached comprises determining whether a specified number of storage devices of the remaining storage devices in the storage subsystem not included in the fixed set have been temporarily disabled.

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

determine two or more storage groups of a storage subsystem, each storage group from the two or more storage groups comprising a plurality of storage devices;

determine a first plurality of storage devices from among the storage devices of the two or more storage groups to include in a fixed set based on a fault tolerance scheme such that all storage devices in the fixed set are available for input/output (I/O) requests, the fixed set comprising a subset of the storage subsystem having information sufficient to restore all data stored in the storage subsystem without requiring data from remaining storage devices in the storage subsystem not included in the fixed set, wherein the computer readable program causes the computer to prevent all storage devices of the fixed set from transitioning between a high revolutions per minute (RPM) operational mode and a low RPM operational mode and to allow remaining storage devices in the storage subsystem to transition between the high RPM operational mode and the low RPM operational mode;

determine an I/O workload of an identified storage device in the remaining storage devices in the storage subsystem;

determine whether the I/O workload meets a threshold; and

responsive to determining the threshold has been met, transition an operational mode of the identified storage device from the high RPM operational mode to the low RPM operational mode.

19. The computer program product of claim 18 , wherein the fault tolerance scheme comprises one of replication or erasure coding.

20. The computer program product of claim 18 , wherein the computer readable program further causes the computer to:

measure power consumed by the storage subsystem;

determine whether the power consumed by the storage subsystem reaches a power threshold; and

responsive to determining that the power threshold has been reached, transition an operational mode of one or more storage devices in the remaining storage devices in the storage subsystem not included in the fixed set.

21. The computer program product of claim 18 , wherein the computer readable program further causes the computer to:

determine whether the identified storage device has reached a device transition threshold; and

responsive to determining the device transition threshold has been reached, temporarily disable transitioning of the identified storage device.

22. The computer program product of claim 21 , wherein the computer readable program further causes the computer to:

determine whether a fixed set transition threshold has been reached; and

responsive to determining the fixed set transition threshold has been reached, determine a second plurality of storage devices in the storage subsystem to include in the fixed set.

23. The computer program product of claim 22 , wherein the fixed set transition threshold is a specified amount of time the first plurality of storage devices were included in the fixed set.

24. The computer program product of claim 22 , wherein the fixed set transition threshold is a specified number of transitions accumulated by the remaining storage devices in the storage subsystem not included in the fixed set.

25. The computer program product of claim 22 , wherein the fixed set transition threshold is a specified number of storage devices that have been temporarily disabled of the remaining storage devices in the storage subsystem not included in the fixed set.

Assignments (8)
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 052915 FRAME 0566 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 059127/0001 →
SECURITY INTEREST Recorded Feb 6, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052915/0566 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INCORRECT SERIAL NO 15/025,946 PREVIOUSLY RECORDED AT REEL: 040831 FRAME: 0265. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 15, 2017
From: HGST NETHERLANDS B.V.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 043973/0762 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2016
From: HGST NETHERLANDS B.V.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 040831/0265 →
CORRECTIVE ASSIGNMENT TO CORRECT THE SPELLING OF THE FOURTH ASSIGNOR'S NAME AND EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 037466 FRAME: 0407. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 27, 2016
From: GUYOT, CYRIL; KHATIB, MOHAMMED; MANZANARES, ADAM; PAMIES-JUAREZ, LLUIS
To: HGST NETHERLANDS B.V.
Reel/Frame 037622/0813 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2016
From: GUYOT, CYRIL; KHATIB, MOHAMMED; MANZANARES, ADAM; PAMIES, LLUIS
To: HGST NETHERLANDS B.V.
Reel/Frame 037466/0407 →
Continuity (1)
Related Publication 20170192685A1 · Jul 6, 2017