Managing job execution
AssigneeInternational Business Machines Corporation
InventorsGiulio Santoli, Fabio Barillari, Fabio Benedetti, Pietro Iannucci
Life of this patent
Estimating the term…
Abstract
A system or computer usable program product for managing jobs scheduled for execution on a target system in which some jobs may spawn additional jobs scheduled for execution on the target system including intercepting jobs scheduled for execution in the target system, determining whether there is resource sufficiency in the target system for executing jobs, responsive to an affirmative determination of resource sufficiency, releasing previously intercepted jobs for execution in the target system, computing a limit of a number of jobs which can be concurrently scheduled by an external system to the target system, and transmitting the computed limit to the external system.
Claims11
A computer usable program product comprising a non-transitory computer usable storage medium including computer usable code for use in managing jobs scheduled for execution on a target system in which some jobs may spawn additional jobs scheduled for execution on the target system, the computer usable program product comprising code for performing the steps of:
- intercepting jobs scheduled for execution in the target system;
- determining whether there is resource sufficiency in the target system for executing jobs;
- responsive to an affirmative determination of resource sufficiency, releasing previously intercepted jobs for execution in the target system;
- computing a limit of a number of jobs which can be concurrently scheduled by an external system to the target system;
- and
- transmitting the computed limit to the external system;
- wherein computing the limit of the number of jobs which can be concurrently scheduled by the source system comprises:
- reading the amount of resource available at this t time b(t) to execute batch jobs in the target system;
- and
- using α, β, γ and ν parameter values, computing the limit at this t time:
- Limit(t)=α+β·ƒ(b(t)+γ)
- wherein f is a function providing an average value of the amounts of available resource measured n times.
A data processing system for managing jobs scheduled for execution on a target system in which some jobs may spawn additional jobs scheduled for execution on the target system, the data processing system comprising:
- a processor;
- and
- a memory storing program instructions which when executed by the processor execute the steps of:
- intercepting jobs scheduled for execution in the target system;
- determining whether there is resource sufficiency in the target system for executing jobs;
- responsive to an affirmative determination of resource sufficiency, releasing previously intercepted jobs for execution in the target system;
- computing a limit of a number of jobs which can be concurrently scheduled by an external system to the target system;
- and
- transmitting the computed limit to the external system;
- wherein computing the limit of the number of jobs which can be concurrently scheduled by the source system comprises:
- reading the amount of resource available at this t time b(t) to execute batch jobs in the target system;
- and
- using α, β, γ and ν parameter values, computing the limit at this t time:
- Limit(t)=α+β·ƒ(b(t)+γ)
- wherein f is a function providing an average value of the amounts of available resource measured n times.
A computer usable program product comprising a non-transitory computer usable storage medium including computer usable code for use in managing jobs scheduled for execution on a target system in which some jobs may spawn additional jobs scheduled for execution on the target system, the computer usable program product comprising code for performing steps of:
- detecting jobs scheduled for execution in the target system, the jobs including a first set of jobs received from a first set of source systems and a second set of jobs received from a second set of source systems, wherein the first set of jobs cannot be suspended due to the first set of jobs being received from the first set of source systems, and wherein the second set of jobs can be suspended due to the second set of jobs being received from the second set of source systems;
- suspending jobs scheduled for execution in the target system from the second set of jobs;
- determining whether there is resource sufficiency in the target system for executing jobs not suspended;
- responsive to an affirmative determination of resource sufficiency, releasing previously suspended jobs for execution in the target system;
- responsive to a negative determination of resource sufficiency, computing a limit of a number of jobs which should be concurrently scheduled by the first set of source systems and providing the computed limit to the first set of source systems;
- wherein no limit of jobs is computed and provided to the second set of source systems because the second set of jobs can be suspended;
- wherein computing the limit of the number of jobs which can be concurrently scheduled by the first set of source systems comprises:
- reading the amount of resource available at this t time b(t) to execute batch jobs in the target system;
- using α, β, γ parameter values, computing the limit at this t time:
- Limit(t)=α+β·ƒ(b(t)+γ)
- wherein f is a function providing an average value of the amounts of available resource measured a plurality of times.
Dependencies are inferred from the claim text.