IP Library › Granted Patent US 10,397,370
Granted Patent B2
US 10,397,370 · App. 15/700,398 · Granted Aug 27, 2019

Peer-based optimal performance configuration recommendation

Inventors: Byung Chul Tak (Seoul, KR); Salman A. Baset (New York, NY); Sahil Suneja (Yorktown Heights, NY); Canturk Isci (Ridgewood, NJ)
Assignee: International Business Machines Corporation
H04L67/34G06F11/3006G06F17/16G06F17/18H04L67/10
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,397,370
App. No.
15/700,398
Granted
Aug 27, 2019
Kind
B2
Abstract

In an approach for determining optimal performance-related configurations of applications by analyzing peer data, a processor monitors instances of an application, wherein the instances of the application are running on a plurality of devices. A processor receives data related to: configuration parameters of the application, system parameters of the plurality of devices, and performance metrics of the plurality of devices. A processor determines correlation and dependencies between the configuration parameters with associated system parameters, using: an all pair analysis and a Pearson product-moment correlation coefficient (PPMCC). A processor determines dependencies between the configuration parameters with performance metrics. A processor recommends to a user, configuration settings of the application, based on the analysis of the data.

Claims (64)

1. A method comprising:

monitoring, by one or more processors, instances of an application, wherein the instances of the application are running on a plurality of devices;

receiving, by one or more processors, data related to: configuration parameters of the application, system parameters of the plurality of devices, and performance metrics of the plurality of devices;

determining, by one or more processors, correlation and dependencies between the configuration parameters with associated system parameters, using an all pair analysis and a Pearson product-moment correlation coefficient (PPMCC), wherein using the all pair analysis comprises:

testing, by one or more processors, possible discrete combinations of the configuration parameters and the system parameters, using test vectors to parallelize the tests of parameter pairs;

determining, by one or more processors, dependencies between the configuration parameters with performance metrics; and

recommending, by one or more processors, to a user, configuration settings of the application, based on the analysis of the data.

2. The method of claim 1 , further comprising:

registering, by one or more processors, for an account for access by the user; and

receiving, by one or more processors, access to the configuration settings recommended to a plurality of users of the application running on the plurality of devices.

3. The method of claim 1 , further comprising:

subsequent to the recommendation, continuing, by one or more processors, to use a current configuration setting; and

testing, by one or more processors, the recommended configuration settings in a separate device with workload replication.

4. The method of claim 1 , further comprising:

automatically changing, by one or more processors, current configuration settings of the user to the recommended configuration settings.

5. The method of claim 1 , wherein determining correlation and dependencies between the configuration parameters with associated system parameters using the PPMCC comprises:

constructing, by one or more processors, a correlation matrix that includes a covariance of two variables divided by a product of a standard deviation of each of the two variables, wherein the two variables are a value for one of the configuration parameters and a value for one of the system parameters.

6. The method of claim 1 , wherein determining dependencies between the configuration parameters with performance metrics comprises:

building, by one or more processors, a performance model for a given value of one of the system parameters, using a plurality of values for the configuration parameters associated with the given value of one of the system parameters and values for one of the performance metrics by creating a multi-dimensional graph, wherein the configuration parameters, the system parameters, and the performance metrics, each, represent a separate axis on the graph; and

determining, by one or more processors, which value of the plurality of values for the configuration parameters corresponds to one of the values for one of the performance metrics when the value for one of the performance metrics is at a highest point for the given value of one of the system parameters.

7. The method of claim 1 , wherein, subsequent to the recommendation, the user has an option to select from the group consisting of: accepting the recommended configuration settings, rejecting the recommended configuration settings, and modifying the recommended configuration settings.

8. A computer program product comprising:

one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising:

program instructions to monitor instances of an application, wherein the instances of the application are running on a plurality of devices;

program instructions to receive data related to: configuration parameters of the application, system parameters of the plurality of devices, and performance metrics of the plurality of devices;

program instructions to determine correlation and dependencies between the configuration parameters with associated system parameters, using an all pair analysis and a Pearson product-moment correlation coefficient (PPMCC), wherein using the all pair analysis comprises:

program instructions to test possible discrete combinations of the configuration parameters and the system parameters, using test vectors to parallelize the tests of parameter pairs;

program instructions to determine dependencies between the configuration parameters with performance metrics; and

program instructions to recommend to a user, configuration settings of the application, based on the analysis of the data.

9. The computer program product of claim 8 , further comprising:

program instructions to register for an account for access by the user; and

program instructions to receive access to the configuration settings recommended to a plurality of users of the application running on the plurality of devices.

10. The computer program product of claim 8 , further comprising:

subsequent to the recommendation, program instructions to continue to use a current configuration setting; and

program instructions to test the recommended configuration settings in a separate device with workload replication.

11. The computer program product of claim 8 , further comprising:

program instructions to automatically change current configuration settings of the user to the recommended configuration settings.

12. The computer program product of claim 8 , wherein program instructions to determine correlation and dependencies between the configuration parameters with associated system parameters using the PPMCC comprise:

program instructions to construct a correlation matrix that includes a covariance of two variables divided by a product of a standard deviation of each of the two variables, wherein the two variables are a value for one of the configuration parameters and a value for one of the system parameters.

13. The computer program product of claim 8 , wherein program instructions to determine dependencies between the configuration parameters with performance metrics comprise:

program instructions to build a performance model for a given value of one of the system parameters, using a plurality of values for the configuration parameters associated with the given value of one of the system parameters and values for one of the performance metrics by creating a multi-dimensional graph, wherein the configuration parameters, the system parameters, and the performance metrics, each, represent a separate axis on the graph; and

program instructions to determine which value of the plurality of values for the configuration parameters corresponds to one of the values for one of the performance metrics when the value for one of the performance metrics is at a highest point for the given value of one of the system parameters.

14. The computer program product of claim 8 , wherein, subsequent to the recommendation, the user has an option to select from the group consisting of: accepting the recommended configuration settings, rejecting the recommended configuration settings, and modifying the recommended configuration settings.

15. A computer system comprising:

one or more computer processors, one or more computer readable storage media, and program instructions stored on the computer readable storage media for execution by at least one of the one or more processors, the program instructions comprising:

program instructions to monitor instances of an application, wherein the instances of the application are running on a plurality of devices;

program instructions to receive data related to: configuration parameters of the application, system parameters of the plurality of devices, and performance metrics of the plurality of devices;

program instructions to determine correlation and dependencies between the configuration parameters with associated system parameters, using an all pair analysis and a Pearson product-moment correlation coefficient (PPMCC), wherein using the all pair analysis comprises:

program instructions to test possible discrete combinations of the configuration parameters and the system parameters, using test vectors to parallelize the tests of parameter pairs;

program instructions to determine dependencies between the configuration parameters with performance metrics; and

program instructions to recommend to a user, configuration settings of the application, based on the analysis of the data.

16. The computer system of claim 15 , further comprising:

program instructions to register for an account for access by the user; and

program instructions to receive access to the configuration settings recommended to a plurality of users of the application running on the plurality of devices.

17. The computer system of claim 15 , further comprising:

subsequent to the recommendation, program instructions to continue to use a current configuration setting; and

program instructions to test the recommended configuration settings in a separate device with workload replication.

18. The computer system of claim 15 , further comprising:

program instructions to automatically change current configuration settings of the user to the recommended configuration settings.

19. The computer system of claim 15 , wherein program instructions to determine correlation and dependencies between the configuration parameters with associated system parameters using the PPMCC comprise:

program instructions to construct a correlation matrix that includes a covariance of two variables divided by a product of a standard deviation of each of the two variables, wherein the two variables are a value for one of the configuration parameters and a value for one of the system parameters.

20. The computer system of claim 15 , wherein program instructions to determine dependencies between the configuration parameters with performance metrics comprise:

program instructions to build a performance model for a given value of one of the system parameters, using a plurality of values for the configuration parameters associated with the given value of one of the system parameters and values for one of the performance metrics by creating a multi-dimensional graph, wherein the configuration parameters, the system parameters, and the performance metrics, each, represent a separate axis on the graph; and

program instructions to determine which value of the plurality of values for the configuration parameters corresponds to one of the values for one of the performance metrics when the value for one of the performance metrics is at a highest point for the given value of one of the system parameters.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2017
From: TAK, BYUNG CHUL; BASET, SALMAN A.; SUNEJA, SAHIL; ISCI, CANTURK
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 043543/0507 →
Continuity (1)
Related Publication 20190082033A1 · Mar 14, 2019
Cited By (1)
US 12,450,052