IP Library Granted Patent US 10,346,204
Granted Patent B2
US 10,346,204 · App. 15/272,011 · Granted Jul 9, 2019

Creating models based on performance metrics of a computing workloads running in a plurality of data centers to distribute computing workloads

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,346,204
App. No.
15/272,011
Granted
Jul 9, 2019
Kind
B2
Abstract

A system includes, for each individual data center of a multiplex data center, a collector component, a local data repository, and a model building component. The collector component collects performance metrics of a computing workload running in the each individual data center of the multiplex data center and stores the collected performance metrics in the local data repository. The model building component builds a respective individual model of data center resource use for each individual CPC in the individual data center using the stored performance metrics. The system further includes a model merging component configured to receive and combine the individual CPC models created by the model building components for the individual data centers into a single multiplex data center model applicable to the computing workload across the multiplex data center.

Claims (64)

1. A system including instructions stored on a non-transitory computer readable storage medium and executable by at least one processor, the system coupled to a plurality of individual data centers, each individual data center including one or more central processor complexes (CPCs), the system comprising:

for each individual data center, a collector to collect performance metrics of a computing workload running on the one or more CPCs in the individual data center;

for each individual data center, a preliminary processor to process the collected performance metrics and store the processed performance metrics in a local data repository;

for each individual data center, a model-builder to build a respective individual model of data center resource use for each individual CPC of the individual data center using the locally stored performance metrics;

a model-combiner to receive and combine the individual CPC models created at the individual data centers into a single model applicable to all versions of a software product of the computing workload running across the plurality of individual data centers;

a reporter to make the single model available in user-selectable versions,

wherein the user-selectable versions include a multiplex-data-centers model version of the single model and an individual-CPC model version of the single model; and

a workload-change evaluator to evaluate an impact of a change in usage of data center resources by the computing workload with reference to a user-selectable version of the single model and, based on the evaluated impact, to distribute the computing workload across the plurality of individual data centers.

2. The system of claim 1 , wherein the preliminary processor is configured to to normalize, aggregate, or format the collected performance metrics.

3. The system of claim 1 , wherein each model-builder-is further configured to map all versions of each product found in the data for an individual CPC into a corresponding product family.

4. The system of claim 3 , wherein the model-builder is further configured to:

create an artificial aggregated product to represent the versions of the product on the individual CPC; and

include the aggregated product in the individual CPC model as representing all versions of the product on the individual CPC.

5. The system of claim 1 , wherein the model-combiner is further configured to map each product found in the individual CPC models to a corresponding product family.

6. The system of claim 5 , wherein the model-combiner is further configured to:

when multiple products are found in the data that map to a same product family, an artificial aggregated product to represent the found multiple products; and

additionally, include the aggregated product in the single model as representing the found multiple products in the plurality of individual data centers.

7. The system of claim 1 , wherein the reporter is further configured to:

when the multiplex-data-centers model version is to be made available, filter out of the single model all individual software products that are also represented by an aggregated product in the single model.

8. The system of claim 1 , wherein the reporter is further configured to:

when the individual-CPC model version is to be made available, filter out of the single model all aggregated products and leave only individual software products in the single model.

9. The system of claim 1 , wherein the one or more CPCs are mainframe computers.

10. A method for distributing a computing workload across a plurality of individual data centers, each of the individual data centers including one or more central processor complexes (CPCs), the method comprising:

monitoring use of data center resources by the computing work load over a predetermined time interval, individually for each individual data center and collectively over the plurality of individual data centers over which the computing workload is run;

at each individual data center, collecting performance metrics of the computing workload running in the individual data center, processing the collected performance metrics, and storing the processed performance metrics in a local data repository;

at each individual data center, building a respective individual model of data center resource use for each individual CPC in the individual data center using the stored performance metrics;

combining the individual CPC models for the individual data centers into a single model applicable to all versions of a software product of the computing workload running across the plurality of individual data centers;

making the single model available in one of two user-selectable versions, wherein the user-selectable versions include a multiplex-data-centers model version of the single model and an individual-CPC model version of the single model; and

evaluating an impact of a change in usage of data center resources by the computing workload with reference to a user-selectable version of the single model and, based on the evaluated impact, distributing the computing workload across the plurality of data centers.

11. The method of claim 10 , wherein processing the collected performance metrics incudes normalizing, aggregating, or formatting the collected performance metrics.

12. The method of claim 10 , wherein building a respective individual model of data center resource use for each individual CPC includes mapping all versions of each product found in the data for an individual CPC into its corresponding product family.

13. The method of claim 10 , further comprising:

creating an artificial aggregated product to represent all versions of the product on the individual CPC; and

including the aggregated product in the individual CPC model as representing all versions of the product on the individual CPC.

14. The method of claim 10 , wherein combining the individual CPC models for the individual data centers into a single model includes mapping each product found in the individual CPC models to a corresponding product family.

15. The method of claim 14 , further comprising:

when multiple products are found in the data that map to a same product family, creating an artificial aggregated product to represent the found multiple products; and

additionally, including the aggregated product in the single model as representing the found multiple products in the plurality of individual data centers.

16. The method of claim 15 , wherein if the multiplex-data-centers model version is to be made available, the method further comprises filtering out of the single model all individual software products that are also represented by an aggregated product in the single model.

17. The method of claim 15 , wherein if the individual-CPC model version is to be made available, the method further comprises filtering out of the single model all aggregated products and leaving only individual software products in the model.

18. The method of claim 17 , wherein building a respective individual model of data center resource use for each individual CPC in the individual data center includes building a respective individual model locally at the individual data center, and transmitting the locally built model to an external location for combining the individual CPC models for the plurality of individual data centers into a single model.

19. A computer program product for distributing a computing workload across a plurality of individual data centers, each of the individual data centers including one or more central processor complexes (CPCs), the computer program product including instructions recorded on a non-transitory computer readable storage medium and configured to cause at least one processor to:

monitor use of data center resources by the computing work load over a predetermined time interval, individually for each individual data center and collectively over the plurality of individual data centers over which the computing workload is run;

at each individual data center, collect performance metrics of the computing workload running in the individual data center, process the collected performance metrics, and store the processed performance metrics in a local data repository;

at each individual data center, build a respective individual model of data center resource use for each individual CPC of the individual data center using the locally stored performance metrics;

combine the individual CPC models built at the individual data centers into a single model applicable to all versions of a software product of the computing workload running across the plurality of individual data centers;

make the single model available in one of two user-selectable version, wherein the user-selectable versions include a multiplex-data-centers model version of the single model and an individual-CPC model version of the single model; and

evaluate an impact of a change in usage of data center resources by the computing workload with reference to a user-selectable version of the single model and distribute the computing workload across the plurality of data centers based on the evaluated impact.

20. The computer program product of claim 19 , wherein the instructions, when executed, are further configured to cause the at least one processor to:

preliminarily process the collected performance metrics to normalize, aggregate, or format the collected performance metrics.

21. The computer program product of claim 19 , wherein the instructions, when executed, are further configured to cause the at least one processor to:

when building a respective individual model of data center resource use for each individual CPC, map all versions of each product found in the data for an individual CPC into its corresponding product family.

22. The computer program product of claim 21 , wherein the instructions, when executed, are further configured to cause the at least one processor to:

create an artificial aggregated product to represent all versions of the product on the individual CPC; and

include the aggregated product in the individual CPC model as representing all versions of the product on the individual CPC.

23. The computer program product of claim 22 , wherein the instructions, when executed, are further configured to cause the at least one processor to:

when combining the individual CPC models for the individual data centers in the multiplex data center into a single model, map each product found in the individual CPC models to a corresponding product family.

24. The computer program product of claim 23 , wherein the instructions, when executed, are further configured to cause the at least one processor to:

when multiple products are found in the data that map to a same product family, create an artificial aggregated product to represent the found multiple products; and

additionally, include the aggregated product in the single model as representing the found multiple products in the plurality of individual data centers.

25. The computer program product of claim 24 , wherein the instructions, when executed, are further configured to cause the at least one processor to:

when the multiplex-data-centers model version is to be made available, filter out of the single model all individual software products that are also represented by an aggregated product in the single model.

26. The computer program product of claim 24 , wherein the instructions, when executed, are further configured to cause the at least one processor to:

when the individual-CPC model version is to be made available, filter out of the single model all aggregated products and leave only individual software products in the model.

Assignments (14)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2025
From: BMC SOFTWARE, INC.
To: BMC HELIX, INC.
Reel/Frame 070442/0197 →
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052854/0139) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0617 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052844/0646) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0408 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052844/0646 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052854/0139 →
RELEASE OF PATENTS Recorded Oct 5, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.; BMC ACQUISITION L.L.C.
Reel/Frame 047198/0468 →
SECURITY INTEREST Recorded Oct 2, 2018
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047185/0744 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2018
From: GINIS, BORIS; NORTHUP, WILLIAM; DISTAURO, ANTHONY; FERNANDES, KEVIN
To: BMC SOFTWARE, INC.
Reel/Frame 045115/0677 →
SECURITY INTEREST Recorded Aug 10, 2017
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 043514/0845 →