IP Library › Granted Patent US 10,545,181
Granted Patent B2
US 10,545,181 · App. 13/812,949 · Granted Jan 28, 2020

Systems and methods for apportioning power consumption

Inventors: Jerome Rolia (Kanata, CA); Cullen E. Bash (Los Gatos, CA); Daniel J. Gmach (Palo Alto, CA); Yuan Chen (Sunnyvale, CA); Mustazirul Islam (Rocklin, CA); SM Prakash Shiva (Karnataka, IN); Zhikui Wang (Fremont, CA)
Assignee: MICRO FOCUS LLC
G01R21/133G06F17/00
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,545,181
App. No.
13/812,949
Filed
Jan 29, 2013
Granted
Jan 28, 2020
Kind
B2
Art Unit
2864
USPC
702/61
Abstract

The present disclosure includes a system and method for apportioning power consumption. In an example of apportioning power consumption according to the present disclosure, a transaction mix for a service is determined ( 104, 204, 330, 420 ), component resource usage for each of a number of components that are used while completing the service is determined ( 106, 206, 108, 208, 422 ), and component power consumption for each of the number of components is determined by use of the component resource usage ( 334, 424 ).

Claims (49)

1. A method for apportioning power consumption, the method implemented by a physical processor implementing machine readable instructions, the method comprising:

determining, by the processor, a plurality of transactions that are used to complete a computing service;

determining, by the processor, a plurality of components that are used to execute operations included in each transaction of the plurality of transactions, wherein each component of the plurality of components comprises a plurality of resources that consume power while executing each transaction of the plurality of transactions;

determining, by the processor, a component resource usage for each component of the plurality of components based on resource demand by the plurality of resources;

determining, by the processor, a component power consumption for each component of the plurality of components based on the component resource usage for each component of the plurality of components; and

apportioning, by the processor, the component power consumption to the computing service based on the determined component power consumption for each component of the plurality of components.

2. The method of claim 1 , further comprising:

determining, by the processor, a transaction mix for the computing service, wherein the transaction mix includes a plurality of transaction types and a request rate at which each transaction type of the plurality of transactions types is requested; and

determining, by the physical processor, the component resource usage for each component of plurality of components based on the resource demand by the plurality of resources and the determined transaction mix.

3. The method of claim 2 , wherein each transaction of the plurality of transactions belongs to a particular transaction type among the plurality of transaction types in the transaction mix.

4. The method of claim 3 , wherein determining the component resource usage for each component of the plurality of components includes determining, by the processor, a product of a resource demand for each transaction type of the plurality of transaction types and the request rate for each transaction type of the plurality of transaction types.

5. The method of claim 1 , wherein determining the component power consumption for each component of the plurality of components includes determining, by the processor, power impact factors for each component of the plurality of components.

6. The method of claim 1 , wherein determining the component resource usage for each component of the plurality of components includes determining, by the processor, background resource usage for each component of the plurality of components, wherein the background resource usage represents a resource usage when no transactions are executed.

7. The method of claim 1 , wherein determining the component power consumption for each component of the plurality of components includes determining, by the processor, background power consumption for each component of the plurality of components, wherein the background power consumption represents a power consumption when no transactions are executed.

8. The method of claim 1 , wherein each resource of the plurality of resources represents a processor, a network interface, an I/O interface, a hard disk operation, or a memory operation.

9. The method of claim 1 , further comprising:

constructing, by the physical processor, a classifier that maps the plurality of transactions based on a resource demand for each transaction of the plurality of transactions.

10. A non-transitory computer readable medium having machine readable instructions stored thereon executable by a physical processor to:

determine a plurality of transactions that are used to complete a computing service;

determining a plurality of components that are used to execute operations included in each transaction of the plurality of transactions, wherein each component of the plurality of components represents a virtual or physical computing device, and each component of the plurality of components comprises a plurality of resources that consume power while executing each transaction of the plurality of transactions;

determine component resource usage for each component of the plurality of components based on resource demand by the plurality of resources;

determine component power consumption for each component of the plurality of components by using the component resource usage; and

apportion the component power consumption to the computing service based on the determined power consumption for each component of the plurality of components.

11. The non-transitory computer readable medium of claim 10 , wherein the computing service includes a computing service of logging data, browsing data, or adding data.

12. The non-transitory computer readable medium of claim 10 , wherein each component of the plurality of components includes one of a web server, an application server, or a database server.

13. The non-transitory computer readable medium of claim 10 , the non-transitory computer readable medium having the instructions stored thereon executable by the processor to:

determine a transaction mix for the computing service, wherein the transaction mix includes a plurality of transaction types in the computing service and a request rate for each transaction type of the plurality of transaction types; and

determine the component resource usage for each component of the plurality of components based on the resource demand by the plurality of resources and the determined transaction mix.

14. The non-transitory computer readable medium of claim 13 , the non-transitory computer readable medium having the instructions stored thereon executable by the processor to:

determine a resource demand of each transaction type of the plurality of transaction types based on a linear regression of data that includes the resource demand by the plurality of resources for each component of the plurality of components.

15. The non-transitory computer readable medium of claim 14 , the non-transitory computer readable medium having the instructions stored thereon executable by the processor to:

determine the component resource usage for each component of the plurality of components by determining a sum of a product of the resource demand of each transaction type of the plurality of transaction types and the request rate for each transaction type of plurality of transaction types.

16. The non-transitory computer readable medium of claim 10 , the non-transitory computer readable medium having the instructions stored thereon executable by the processor to:

determine the component power consumption for each component of the plurality of components includes determining power impact factors for each component of the plurality of components.

17. A power consumption apportioning system, comprising:

a plurality of communicatively coupled user computing devices; and

at least one server computing device communicatively coupled to the plurality of communicatively coupled user computing devices, the server computing device comprising:

at least one physical processor;

a non-transitory memory in communication with the at least one physical processor, the non-transitory memory being programmed with instructions executable on the at least one physical processor to:

determine a transaction mix that comprises a plurality of transaction types for a computing service and a request rate at which each transaction type of the plurality of transaction types is requested;

determine a plurality of transactions that are used to complete the computing service;

determine a plurality of components that are used to execute operations included in each of the plurality of transactions, wherein each component of the plurality of components comprises a plurality of resources that consume power while executing each transaction of the plurality of transactions;

determine component resource usage for each component of the plurality of components based on at least one of: (i) the request rate for each transaction type of the plurality of transaction types, and (ii) resource demand that is made by the plurality of resources to execute each transaction of the plurality of transactions, wherein each transaction of the plurality of transactions corresponds to a particular transaction type among the plurality of transaction types;

determine component power consumption for each component of the plurality of components by using the component resource usage; and

apportion the component power consumption to the computing service based on the determined component power consumption for each component of the plurality of components.

18. The power consumption apportioning system of claim 17 , wherein the non-transitory memory is programmed with instructions executable on at least one physical the processor to:

determine the transaction mix for the computing service, wherein the transaction mix includes the plurality of transaction types and a request rate at which each transaction type of the plurality of transactions types is requested; and

determine the component resource usage for each component of plurality of components based on the resource demand by the plurality of resources and the determined transaction mix.

19. The power consumption apportioning system of claim 17 , wherein determining the component power consumption for each component of the plurality of components includes determining power impact factors for each component of the plurality of components.

Assignments (9)
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0577 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC)
Reel/Frame 063560/0001 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
CHANGE OF NAME Recorded Aug 8, 2019
From: ENTIT SOFTWARE LLC
To: MICRO FOCUS LLC
Reel/Frame 050004/0001 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ARCSIGHT, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0577 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2017
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: ENTIT SOFTWARE LLC
Reel/Frame 042746/0130 →
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 Jul 8, 2013
From: ROLIA, JEROME; BASH, CULLEN E.; GMACH, DANIEL J.; CHEN, YUAN; WANG, ZHIKUI; SHIVA, SM PRAKASH; ISLAM, MUSTAZIRUL
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 030753/0642 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2013
From: ROLIA, JEROME; BASH, CULLEN E.; GMACH, DANIEL J.; CHEN, YUAN; WANG, ZHIKUI; SHIVA, SM PRAKASH; ISLAM, MUSTAZIRUL
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 029728/0204 →
Continuity (1)
Related Publication 20130132009A1 · May 23, 2013