IP Library Granted Patent US 8,230,249
Granted Patent B2
US 8,230,249 · App. 12/503,246 · Granted Jul 24, 2012

Dynamic selection of server states for servers in a cluster of servers

Assignee: International Business Machines Corporation
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 8,230,249
App. No.
12/503,246
Granted
Jul 24, 2012
Kind
B2
Abstract

Techniques for dynamically selecting a server state for one or more servers in a cluster of servers are provided. The techniques include tracking each active and sleep state of each server in a cluster of servers, and selecting a server state for one or more servers in the cluster of servers to meet one or more workload level requirements of the cluster of servers, wherein selecting a server state for one or more servers comprises scheduling a transition between one or more active and sleep states for the one or more servers, wherein scheduling the transition comprises using power consumption information for each state and transition time information for each transition.

Claims (28)

1. A method for dynamically selecting a server state for one or more servers in a cluster of servers, wherein the method comprises:

tracking each active and sleep state of each server in a cluster of servers; and

selecting a server state for one or more servers in the cluster of servers to meet one or more workload level requirements of the cluster of servers for a time period divided into multiple discrete time intervals, wherein selecting a server state for one or more servers comprises scheduling a transition between one or more active and sleep states for the one or more servers for each of multiple discrete time intervals within the time period, wherein scheduling the transition comprises using power consumption information for each state and transition time information for each transition for each of the multiple discrete time intervals within the time period, wherein transition time information includes switching time from active state to sleep state, idling time, and switching time from sleep state to active state.

2. The method of claim 1 , wherein one or more workload level requirements comprise one or more performance goals.

3. The method of claim 1 , wherein one or more workload level requirements comprise minimizing aggregate server power costs.

4. The method of claim 1 , wherein scheduling a transition between one or more active and sleep states for the one or more servers comprises determining how many of the one or more servers should be in an active state and how many of the one or more servers should be in a sleep state.

5. The method of claim 4 , wherein determining how many of the one or more servers should be in a sleep state comprises determining which among multiple sleep states to place each inactive server.

6. The method of claim 1 , wherein the one or more active states comprise one or more operating states.

7. The method of claim 1 , wherein dynamically selecting a server state for one or more servers in a cluster of servers comprises dynamically selecting a server state for one or more servers in a cluster of servers offline with complete information and perfect look-ahead.

8. The method of claim 1 , wherein dynamically selecting a server state for one or more servers in a cluster of servers comprises dynamically selecting a server state for one or more servers in a cluster of servers at run-time with a predictive look-ahead.

9. The method of claim 1 , further comprising selecting an active server set and one or more operating states {AS}, wherein all sleep states of selected server types are categorized into a set of intervals S, wherein {AS} i =all servers selected for interval i and their operating states, and wherein for a largest interval in S, a consolidation algorithm returns a set of servers that satisfies one or more performance service level agreements while minimizing cost.

10. The method of claim 1 , further comprising providing a system, wherein the system comprises one or more distinct software modules, each of the one or more distinct software modules being embodied on a tangible computer-readable recordable storage medium, and wherein the one or more distinct software modules comprise a power model module, a performance model module, a server state model module, a power management module, a performance management module, an infrastructure management module and an arbitrator module executing on a hardware processor.

11. A computer program product comprising a tangible computer readable recordable storage medium including computer useable program code for dynamically selecting a server state for one or more servers in a cluster of servers, the computer program product including:

computer useable program code for tracking each active and sleep state of each server in a cluster of servers; and

computer useable program code for selecting a server state for one or more servers in the cluster of servers to meet one or more workload level requirements of the cluster of servers for a time period divided into multiple discrete time intervals, wherein selecting a server state for one or more servers comprises scheduling a transition between one or more active and sleep states for the one or more servers for each of multiple discrete time intervals within the time period, wherein scheduling the transition comprises using power consumption information for each state and transition time information for each transition for each of the multiple discrete time intervals within the time period, wherein transition time information includes switching time from active state to sleep state, idling time, and switching time from sleep state to active state.

12. The computer program product of claim 11 , wherein the computer useable program code for scheduling a transition between one or more active and sleep states for the one or more servers comprises computer useable program code for determining how many of the one or more servers should be in an active state and how many of the one or more servers should be in a sleep state.

13. The computer program product of claim 11 , wherein the computer useable program code for dynamically selecting a server state for one or more servers in a cluster of servers comprises computer useable program code for dynamically selecting a server state for one or more servers in a cluster of servers offline with complete information and perfect look-ahead.

14. The computer program product of claim 11 , wherein the computer useable program code for dynamically selecting a server state for one or more servers in a cluster of servers comprises computer useable program code for dynamically selecting a server state for one or more servers in a cluster of servers at run-time with a predictive look-ahead.

15. The computer program product of claim 11 , wherein the computer usable program code comprises one or more distinct software modules, and wherein the one or more distinct software modules comprise a power model module, a performance model module, a server state model module, a power management module, a performance management module, an infrastructure management module and an arbitrator module executing on a hardware processor.

16. A system for dynamically selecting a server state for one or more servers in a cluster of servers, comprising:

a memory; and

at least one processor coupled to the memory and operative to:

track each active and sleep state of each server in a cluster of servers; and

select a server state for one or more servers in the cluster of servers to meet one or more workload level requirements of the cluster of servers for a time period divided into multiple discrete time intervals, wherein selecting a server state for one or more servers comprises scheduling a transition between one or more active and sleep states for the one or more servers for each of multiple discrete time intervals within the time period, wherein scheduling the transition comprises using power consumption information for each state and transition time information for each transition for each of the multiple discrete time intervals within the time period, wherein transition time information includes switching time from active state to sleep state, idling time, and switching time from sleep state to active state.

17. The system of claim 16 , wherein the at least one processor coupled to the memory operative to schedule a transition between one or more active and sleep states for the one or more servers is further operative to determine how many of the one or more servers should be in an active state and how many of the one or more servers should be in a sleep state.

18. The system of claim 16 , wherein the at least one processor coupled to the memory operative to dynamically select a server state for one or more servers in a cluster of servers is further operative to dynamically select a server state for one or more servers in a cluster of servers offline with complete information and perfect look-ahead.

19. The system of claim 16 , wherein the at least one processor coupled to the memory operative to dynamically select a server state for one or more servers in a cluster of servers is further operative to dynamically select a server state for one or more servers in a cluster of servers at run-time with a predictive look-ahead.

20. The system of claim 16 , further comprising a tangible computer-readable recordable storage medium having one or more distinct software modules embodied thereon, the one or more distinct software modules comprising a power model module, a performance model module, a server state model module, a power management module, a performance management module, an infrastructure management module and an arbitrator module executing on a hardware processor.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 15, 2009
From: DASGUPTA, GARGI B.; NEOGI, ANINDYA; VERMA, AKSHAT
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 022958/0241 →
Continuity (1)
Related Publication 20110016339A1 · Jan 20, 2011