IP Library Granted Patent US 9,454,206
Granted Patent B2
US 9,454,206 · App. 14/143,130 · Granted Sep 27, 2016

Power management techniques for computer-readable storage devices

Inventors: David Robles (Sunnyvale, CA); George Totolos (Cranberry Township, PA); Joshua Silberman (Redwood City, CA)
Assignee: NetApp, Inc.
G06F1/3206G06F1/32G06F1/3275
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 9,454,206
App. No.
14/143,130
Granted
Sep 27, 2016
Kind
B2
Abstract

Improved power management techniques for computer-readable storage devices are described. In one embodiment, for example, an apparatus may comprise a plurality of logical storage devices and a controller to manage operations of the plurality of logical storage devices, the controller comprising a configuration component to configure a global power consumption threshold defining an overall power consumption budget for the plurality of logical storage devices, a tracking component to maintain a global power consumption tally comprising an estimated total power consumption level for the plurality of logical storage devices, and an arbitration component to resolve an operation request based on the global power consumption threshold and the global power consumption tally. Other embodiments are described and claimed.

Claims (35)

1. A computing apparatus, comprising:

a memory containing a machine readable medium comprising machine executable code having stored thereon instructions for performing a method of power management;

a processor coupled to the memory, the processor configured to execute the machine executable code to cause the processor to:

configure a global power consumption threshold defining an overall power consumption budget for a plurality of logical storage devices;

maintain a global power consumption tally comprising an estimated total power consumption level for the plurality of logical storage devices;

resolve an operation request based on the global power consumption threshold and the global power consumption tally; and

update the global power consumption tally when an amount of time starting from commencement of the operation reaches a stored performance time for the operation.

2. The apparatus of claim 1 , wherein the operation request identifies an operation to be performed by one of the plurality of logical storage devices.

3. The apparatus of claim 2 , wherein the resolve the operation request is further based on an estimated power consumption cost of the operation.

4. The apparatus of claim 3 , wherein the processor is further configured to execute the machine executable code to cause the processor to calculate a global available power value comprising a difference between the global power consumption threshold and the global power consumption tally.

5. The apparatus of claim 4 , wherein the resolve the operation request is further based on a comparison of the estimated power consumption cost of the operation with the global available power value.

6. The apparatus of claim 5 , wherein the processor is further configured to execute the machine executable code to cause the processor to defer the operation when the estimated power consumption cost of the operation is greater than the global available power value.

7. The apparatus of claim 1 , wherein the processor is further configured to execute the machine executable code to cause the processor to configure one or more regional power consumption thresholds, each regional power consumption threshold defining a collective power consumption budget for logical storage devices located within a respective region of a storage arrangement comprising the plurality of logical storage devices.

8. The apparatus of claim 7 , wherein the processor is further configured to execute the machine executable code to cause the processor to maintain one or more regional power consumption tallies corresponding to the one or more regional power consumption thresholds, each regional power consumption tally comprising an estimated collective power consumption level for logical storage devices located within a region associated with a corresponding regional power consumption threshold.

9. A method, comprising:

determining, by a controller device, an estimated power consumption cost of an operation to be performed by one of a plurality of logical storage devices based on a received operation request;

resolving, by the controller device, the operation based on the estimated power consumption cost, a global power consumption threshold, and a global power consumption tally for the plurality of logical storage devices; and

updating, by the controller device, the global power consumption tally when an amount of time starting from commencement of the operation reaches a stored performance time for the operation.

10. The method of claim 9 , wherein the global power consumption threshold defines an overall power consumption budget for the plurality of logical storage devices, the global power consumption tally comprising an estimated total power consumption level for the plurality of logical storage devices.

11. The method of claim 9 , further comprising configuring, by the controller device, one or more regional power consumption thresholds, each regional power consumption threshold defining a collective power consumption budget for logical storage devices located within a respective region of a storage arrangement comprising the plurality of logical storage devices.

12. The method of claim 11 , further comprising maintaining, by the controller device, one or more regional power consumption tallies corresponding to the one or more regional power consumption thresholds, each regional power consumption tally comprising an estimated collective power consumption level for logical storage devices located within a region associated with a corresponding regional power consumption threshold.

13. The method of claim 9 , further comprising configuring, by the controller device, one or more device power consumption thresholds, each device power consumption threshold defining a power consumption budget for a respective one of the plurality of logical storage devices.

14. The method of claim 9 , further comprising:

receiving, by the controller device, system power information;

selecting, by the controller device, a power management configuration based on the system power information; and

determining, by the controller device, the global power consumption threshold based on the power management configuration.

15. A non-transitory machine-readable medium having stored thereon instructions for performing a method comprising machine executable code which when executed by a machine, causes the machine to:

determine an estimated power consumption cost of an operation to be performed by one of a plurality of logical storage devices based on a received operation request;

resolve the operation based on the estimated power consumption cost, a global power consumption threshold, and a global power consumption tally for the plurality of logical storage devices; and

update the global power consumption tally when an amount of time starting from commencement of the operation reaches a stored performance time for the operation.

16. The non-transitory machine-readable medium of claim 15 , the global power consumption threshold defining an overall power consumption budget for the plurality of logical storage devices, the global power consumption tally comprising an estimated total power consumption level for the plurality of logical storage devices.

17. The non-transitory machine-readable medium of claim 16 , comprising instructions that, in response to being executed on the computing device, cause the computing device to calculate a global available power value comprising a difference between the global power consumption threshold and the global power consumption tally.

18. The non-transitory machine-readable medium of claim 17 , comprising instructions that, in response to being executed on the computing device, cause the computing device to resolve the operation request based on a comparison of the estimated power consumption cost of the operation with the global available power value.

19. The non-transitory machine-readable medium of claim 18 , comprising instructions that, in response to being executed on the computing device, cause the computing device to defer the operation when the estimated power consumption cost of the operation is greater than the global available power value.

20. The non-transitory machine-readable medium of claim 15 , comprising instructions that, in response to being executed on the computing device, cause the computing device to decrement the global power consumption tally to reflect completion of an operation by one of the plurality of logical storage devices.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2014
From: ROBLES, DAVID; TOTOLOS, GEORGE; SILBERMAN, JOSHUA
To: NETAPP INC.
Reel/Frame 032036/0924 →
Continuity (1)
Related Publication 20150185799A1 · Jul 2, 2015