Patent ID: 8584122
Filing Date: 2013-11-12
Classification: G06F

Abstract:
1. A method to schedule execution of a plurality of batch jobs by a computer system, the method comprising: reading one or more constraints that constrain the execution of the plurality of batch jobs by the computer system and a current load on the computer system; grouping the plurality of batch jobs into at least one run frequency that includes at least one batch job; setting the at least one run frequency to a first run frequency; computing a load generated by each batch job in the first run frequency on the computer system based on each batch job's start time, the computing including multiplying by a factor that transforms an average of the load in a given time period of operation to a load expected during a busiest of such given time period of operation to protect against a worst case in which a number of batch operations in such given time period is higher than an average number of batch operations expected during the busiest of such given time period; determining an optimized start time for each batch job in the first run frequency that meets the one or more constraints and that distributes each batch job's load on the computer system using each batch job's computed load and the current load for the first run frequency, the one or more constraints providing that the optimized start time for each batch job meets requirements of a service level agreement of the computer system and that a number of operations per time period required by the batch jobs in the first run frequency does not exceed a maximum number of operations per time period capability of the computer system; regularizing at least one batch job with an irregular run frequency from the plurality of batch jobs to a batch job with a regular frequency; and updating the current load on the computer system with loads of each batch job in the first run frequency by setting the at least one run frequency to a second run frequency and computing a load generated by each batch job in the second run frequency on the computer system based on each batch job's start time.