MONITORING THE PERFORMANCE OF THREADED APPLICATIONS
First Claim
1. A method comprising:
- detecting, by one or more computer processors, a thread that is executing, wherein the thread is spawned by a threaded application;
determining, by one or more computer processors, a thread class of the thread;
measuring, by one or more computer processors, a performance metric of the thread based on the thread class;
interpolating, by one or more computer processors, a trend that describes a consumption of the performance metric as a function of percent execution time; and
in response to determining, by one or more computer processors, that a threshold associated with the performance metric is exceeded based on a comparison of the trend to a trend template that is associated with the performance metric, issuing, by one or more computer processors, an alert identifying the thread as an abnormally executed thread in order to trigger a corrective action that improves a performance of a computing device that is configured to execute the threaded application.
1 Assignment
0 Petitions
Accused Products
Abstract
An ability to monitor the performance of a threaded application is provided. A thread that is executing is detected, wherein the thread is spawned by a threaded application. A thread class of the thread is determined. A performance metric of the thread is measured. A trend that describes a consumption of the performance metric as a function of percent execution time is interpolated. In response to determining that a threshold associated with the performance metric is exceeded based on a comparison of the trend to a trend template that is associated with the performance metric, an alert is issued. The alert identifies the thread as an abnormally executed thread in order to trigger a corrective action that improves a performance of a computing device that is configured to execute the threaded application.
18 Citations
25 Claims
-
1. A method comprising:
-
detecting, by one or more computer processors, a thread that is executing, wherein the thread is spawned by a threaded application; determining, by one or more computer processors, a thread class of the thread; measuring, by one or more computer processors, a performance metric of the thread based on the thread class; interpolating, by one or more computer processors, a trend that describes a consumption of the performance metric as a function of percent execution time; and in response to determining, by one or more computer processors, that a threshold associated with the performance metric is exceeded based on a comparison of the trend to a trend template that is associated with the performance metric, issuing, by one or more computer processors, an alert identifying the thread as an abnormally executed thread in order to trigger a corrective action that improves a performance of a computing device that is configured to execute the threaded application. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
detecting, by one or more computer processors, a thread that is executing, wherein the thread is spawned by a threaded application; determining, by one or more computer processors, a thread class of the thread; measuring, by one or more computer processors, a plurality of performance metrics of the thread based on the thread class; for each performance metric, interpolating, by one or more computer processors, a respective trend that describes a consumption of a respective performance metric as a function of percent execution time; for each performance metric, comparing, by one or more computer processors, the respective trend to a respective trend template; generating, by one or more computer processors, a composite value based on a plurality of trends and a plurality of trend templates; and in response to determining, by one or more computer processors, that the composite value exceeds every composite threshold value of a plurality of composite threshold values, issuing, by one or more computer processors, an alert identifying the thread as an abnormally executed thread in order to trigger a corrective action that improves a performance a computing device that is configured to execute the threaded application. - View Dependent Claims (10, 11, 12)
-
-
13. A method comprising:
-
detecting, by one or more computer processors, a thread that is executing; determining, by one or more computer processors, a thread class of the thread; measuring, by one or more computer processors, a plurality of performance metrics of the thread based on the thread class; for a first performance metric, calculating, by one or more computer processors, an interpolated trend that describes a consumption of the first performance metric as a function of percent execution time; in response to determining, by one or more computer processors, that a first trend template that is associated with the first performance metric is invalid, modifying, by one or more computer processors, the first trend template based on the interpolated trend, wherein the first trend template is one of a plurality of trend templates that includes a second trend template, and wherein the second trend template is associated with a second performance metric of the plurality of performance metrics; and in response to determining, by one or more computer processors, that each template of the plurality of trend templates is valid, modifying, by one or more computer processors, a composite threshold value based on the plurality of trends and the plurality of trend templates, wherein the composite threshold value is associated with the thread class. - View Dependent Claims (14, 15)
-
-
16. A computer program product for comprising:
a computer readable storage medium and program instructions stored on the computer readable storage medium, the program instructions comprising; program instructions to detect a thread that is executing, wherein the thread is spawned by a threaded application; program instructions to determine a thread class of the thread; program instructions to measure a performance metric of the thread based on the thread class; program instructions to interpolate a trend that describes a consumption of the performance metric as a function of percent execution time; and program instructions to, in response to determining that a threshold associated with the performance metric is exceeded based on a comparison of the trend to a trend template that is associated with the performance metric, issue an alert identifying the thread as an abnormally executed thread in order to trigger a corrective action that improves a performance of a computing device that is configured to execute the threaded application. - View Dependent Claims (17, 18, 19, 20)
-
21. A computer system comprising:
-
one or more computer processors; one or more computer readable storage media; program instructions stored on the one or more computer readable storage media for execution by at least one of the one or more processors, the program instructions comprising; program instructions to detect a thread that is executing, wherein the thread is spawned by a threaded application; program instructions to determine a thread class of the thread; program instructions to measure a performance metric of the thread based on the thread class; program instructions to interpolate a trend that describes a consumption of the performance metric as a function of percent execution time; and program instructions to, in response to determining that a threshold associated with the performance metric is exceeded based on a comparison of the trend to a trend template that is associated with the performance metric, issue an alert identifying the thread as an abnormally executed thread in order to trigger a corrective action that improves a performance of the one or more computer processors, wherein the one or more computer processors are configured to execute the threaded application. - View Dependent Claims (22, 23, 24, 25)
-
Specification