Patent ID: 7937705

Claim:
A method for scheduling a plurality of jobs including the steps of: receiving at least one job to be processed from at least one customer, wherein said receiving further includes receiving at least one attribute specific to said at least one job to be processed including a tolerance time; estimating a time for completion of processing for said at least one job to be processed; placing said at least one job to be processed in a queue having other jobs to be processed, wherein each of said other jobs includes an estimate time for completion and a tolerance time; sorting said at least one job and said other jobs to be processed in said queue based on said tolerance time and said estimated time for completion of said at least one job to be processed and said other jobs; configuring dynamically at least one cluster of processing resources from a pool of processing resources responsive to said tolerance time and said estimate time for completion of said at least one job to be processed; processing said at least one job to be processed from said sorted queue by assigning said at least one job to be processed to said at least one cluster of processing resources; and making a result of said processing of said at least one job to be processed available to said at least one customer, wherein said tolerance time includes a time of completion acceptable to said at least one customer that is later in time than said estimated time for completion.