Patent ID: 8612597

Claim:
A computer program product comprising one or more hardware storage devices having stored thereon computer executable instructions, that when executed by one or more processors of a computing system, causes the computing system to perform the following: an act of registering a plurality of entities to a cluster of processing resources, including registering at least a first entity as having a first corresponding amount of guaranteed processing resources on the cluster of processing resources and registering at least a second entity as having a second corresponding amount of guaranteed processing resources on the cluster of processing resources; an act of identifying a processing job for the cluster of processing resources, the processing job being associated with the first entity, the processing job requiring an amount of processing resources that is less than or equal to the first corresponding amount of guaranteed processing resources associated with the first entity; an act of determining whether there are enough processing resources remaining on the cluster of processing resources to perform the processing job; an act of determining whether the first entity has sufficient guaranteed processing resources to process the processing job without exceeding the first corresponding amount of guaranteed processing resources associated with the first entity; and when there are not enough processing resources remaining on the cluster of processing resources to perform the processing job, and when it is determined that the first entity has sufficient guaranteed processing resources to process the processing job without exceeding the first corresponding amount of guaranteed processing resources associated with the first entity, performing the following: an act of determining that the second entity is exceeding the second corresponding amount of guaranteed processing resources associated with the second entity; and based on the second entity exceeding the second corresponding amount of guaranteed processing resources associated with the second entity, an act of at least partially preempting one or more other processing jobs of the second entity, at least until there are enough processing resources to perform the processing job associated with the first entity.