Patent ID: 7685283
Filing Date: 2010-03-23
Classification: G06F

Abstract:
1. A computer-implemented process for managing computing resources provided to customers in an on-demand data center, the computer-implemented process comprising: providing a shared computing environment wherein computing resources are shared between the customers; providing to each customer one or more logical partitions of computing resources within the shared computing environment; allocating at least one processing engine to each logical partition; responsive to inputting a number of logical partitions, a number of engines allocated for each logical partition, a collective target utilization for all logical partitions, and an anticipated customer utilization for all logical partitions, calculating a beta distribution with the anticipated customer utilization as a mode of the beta distribution, and storing the beta distribution in a calculation data file; calculating, for each logical partition, a new number of engines needed using a randomly selected utilization from the beta distribution, storing the new number of engines needed in the calculation data file, calculating a new utilization using the new number of engines, and storing the new utilization in the calculation data file; iteratively, for a number of iterations, calculating a collective processing engine differential, wherein the processing engine differential is the difference between an original number of processing engines allocated to each logical partition and a new number of processing engines necessary to provide a random resource utilization value to each logical partition, and storing the collective processing engine differential in the calculation data file, and also calculating an average new collective logical partition utilization, saving the average new collective logical partition utilization, and comparing the average new collective logical partition utilization to the collective target utilization until the average new collective logical partition utilization converges within a predetermined threshold to the collective target utilization; and wherein a final calculated free pool is a number of new engines needed to support a selected customer and also to maintain the collective target utilization.