Patent attributes
An implementation of the disclosure provides a scheduler for scheduling multi-phase computing jobs where each phase utilizes different amount of resources for executing the jobs in that phase. To schedule the jobs, the scheduler receives a profile for a computing job describing the execution phases associated with one more complied executable modules. The profile includes a plurality of job phase definitions. Each job phase definition includes an estimated amount of computing resources utilized by executing a respective job phase. An identifier of the computing job is appended to a job queue. A combination of one or more computing jobs is selected from the job queue. Thereupon, this combination is scheduled for execution, if it is determined that a total of the estimated amount of computing resources for executing computing jobs in each of one or more of the respective jobs phases satisfies a threshold resource amount associated with the combination.