Runtime prediction for job management
AssigneeBMC Software, Inc.
InventorNikolai OZEROV
Life of this patent
Estimating the term…
Abstract
Described techniques provide optimized job management with accurate runtime predictions for individual job instances. By classifying jobs with respect to combinations of multiple prediction algorithms and multiple job properties, including classifying different job instances of a single job, the described techniques enable use of fast, simple prediction techniques while still providing accurate predictions.
Claims20
A computer program product, the computer program product being tangibly embodied on a non-transitory computer-readable storage medium and comprising instructions that, when executed by at least one computing device, are configured to cause the at least one computing device to:
- classify a job of a plurality of completed jobs executed by an operating system, the job having a corresponding plurality of job instances, as having a runtime that is not predictable within a first prediction threshold of a first prediction algorithm or within a second prediction threshold of a second prediction algorithm of a plurality of prediction algorithms;
- perform a segmentation of the job instances into first job instances and second job instances using at least one segmentation threshold that defines the first job instances as having runtimes predicted within the first prediction threshold when using the first prediction algorithm or the second prediction threshold when using the second prediction algorithm;
- select the first prediction algorithm, based on the segmentation;
- receive a new job instance of the job;
- predict a predicted runtime of the new job instance, using the first prediction algorithm;
- and
- submit the new job instance to the operating system for execution thereof, based on the predicted runtime.
A computer-implemented method, the method comprising:
- classifying a job of a plurality of completed jobs executed by an operating system, the job having a corresponding plurality of job instances, as having a runtime that is not predictable within a first prediction threshold of a first prediction algorithm or within a second prediction threshold of a second prediction algorithm of a plurality of prediction algorithms;
- performing a segmentation of the job instances into first job instances and second job instances using at least one segmentation threshold that defines the first job instances as having runtimes predicted within the first prediction threshold when using the first prediction algorithm or the second prediction threshold when using the second prediction algorithm;
- selecting the first prediction algorithm, based on the segmentation;
- receiving a new job instance of the job;
- predicting a predicted runtime of the new job instance, using the first prediction algorithm;
- and
- submitting the new job instance to the operating system for execution thereof, based on the predicted runtime.
A mainframe system comprising:
- at least one memory including instructions;
- and
- at least one processor that is operably coupled to the at least one memory and that is arranged and configured to execute instructions that, when executed, cause the at least one processor to
- classify a job of a plurality of completed jobs executed by an operating system, the job having a corresponding plurality of job instances, as having a runtime that is not predictable within a first prediction threshold of a first prediction algorithm or within a second prediction threshold of a second prediction algorithm of a plurality of prediction algorithms;
- perform a segmentation of the job instances into first job instances and second job instances using at least one segmentation threshold that defines the first job instances as having runtimes predicted within the first prediction threshold when using the first prediction algorithm or the second prediction threshold when using the second prediction algorithm;
- select the first prediction algorithm, based on the segmentation;
- receive a new job instance of the job;
- predict a predicted runtime of the new job instance, using the first prediction algorithm;
- and
- submit the new job instance to the operating system for execution thereof, based on the predicted runtime.
Dependencies are inferred from the claim text.