Bottleneck detector for executing applications
First Claim
1. A system comprising:
- a processor;
a bottleneck analyzer that;
identifies a workload processed by an application, said workload having multiple instances;
captures timestamps each time a workload instance encounters each of a plurality of checkpoints in said application; and
for a first checkpoint, curve fits said timestamps across a plurality of workload instances to generate a first historical curve;
for a second checkpoint, curve fitting said timestamps across said plurality of workload instances to generate a second historical curve; and
compares said first historical curve to said second historical curve to identify a difference between said first historical curve and said second historical curve; and
determines that said difference indicates a bottleneck.
2 Assignments
0 Petitions
Accused Products
Abstract
A bottleneck detector may analyze individual workloads processed by an application by logging times when the workload may be processed at different checkpoints in the application. For each checkpoint, a curve fitting algorithm may be applied, and the fitted curves may be compared between different checkpoints to identify bottlenecks or other poorly performing sections of the application. A real time implementation of a detection system may compare newly captured data points against historical curves to detect a shift in the curve, which may indicate a bottleneck. In some cases, the fitted curves from neighboring checkpoints may be compared to identify sections of the application that may be a bottleneck. An automated system may apply one set of checkpoints in an application, identify an area for further investigation, and apply a second set of checkpoints in the identified area. Such a system may recursively search for bottlenecks in an executing application.
-
Citations
10 Claims
-
1. A system comprising:
-
a processor; a bottleneck analyzer that; identifies a workload processed by an application, said workload having multiple instances; captures timestamps each time a workload instance encounters each of a plurality of checkpoints in said application; and for a first checkpoint, curve fits said timestamps across a plurality of workload instances to generate a first historical curve; for a second checkpoint, curve fitting said timestamps across said plurality of workload instances to generate a second historical curve; and compares said first historical curve to said second historical curve to identify a difference between said first historical curve and said second historical curve; and determines that said difference indicates a bottleneck. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
Specification