IP Library › Granted Patent US 9,229,783
Granted Patent B2
US 9,229,783 · App. 12/751,089 · Granted Jan 5, 2016

Methods and apparatus for resource capacity evaluation in a system of virtual containers

Inventors: Fabio Benedetti (Rome, IT); Norman Bobroff (Katonah, NY); Liana Liyow Fong (Irvington, NY); Yanbin Liu (New Haven, CT); Seetharami R. Seelam (Yorktown Heights, NY)
Assignee: International Business Machines Corporation
G06F9/5077G06F2209/5022
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,229,783
App. No.
12/751,089
Granted
Jan 5, 2016
Kind
B2
Abstract

Methods and apparatus are provided for evaluating potential resource capacity in a system where there is elasticity and competition between a plurality of containers. A dynamic potential capacity is determined for at least one container in a plurality of containers competing for a total capacity of a larger container. A current utilization by each of the plurality of competing containers is obtained, and an equilibrium capacity is determined for each of the competing containers. The equilibrium capacity indicates a capacity that the corresponding container is entitled to. The dynamic potential capacity is determined based on the total capacity, a comparison of one or more of the current utilizations to one or more of the corresponding equilibrium capacities and a relative resource weight of each of the plurality of competing containers. The dynamic potential capacity is optionally recalculated when the set of plurality of containers is changed or after the assignment of each work element.

Claims (38)

1. A method for determining a free capacity of at least one container in a plurality of containers competing for a total capacity of a larger container, said method comprising:

obtaining a current utilization by each of said plurality of competing containers;

determining a first individual equilibrium capacity value for each of said plurality of competing containers by summing a minimum resource allocation amount corresponding to the given container and a portion of remaining available resource allocation, wherein said portion is pro-rated based on a relative resource weight of the given container;

determining an updated individual equilibrium capacity value for each of said plurality of competing containers with a current utilization that is less than the first individual equilibrium capacity value by summing the minimum resource allocation amount corresponding to the given container and a portion of remaining available resource allocation among (i) each of said plurality of competing containers having a current utilization that is greater than the first individual equilibrium capacity value and (ii) the given container, wherein said portion is pro-rated based on a relative resource weight of the given container;

determining an individual free capacity for each of said plurality of competing containers associated with each container, wherein said determining an individual free capacity for a given container comprises:

for each of said plurality of competing containers with a current utilization that is less than the first individual equilibrium capacity value, subtracting the current utilization associated with the given container from the updated equilibrium capacity associated with the given container; and

for each of said plurality of competing containers with a current utilization that is greater than the first individual equilibrium capacity value, subtracting the current utilization associated with the given container from the difference of the total capacity less the current utilization of each of said plurality of competing containers excluding the given container; and

allocating resources to the plurality of the competing containers based on the determined free capacity for each of the plurality containers;

wherein said obtaining, said determining the individual equilibrium capacity, said determining the individual free capacity, and said allocating are carried out by a computing device.

2. The method of claim 1 , wherein said obtaining step further comprises the step of obtaining a minimum capacity for each of said plurality of containers.

3. The method of claim 2 , wherein capacity above said minimum capacity is apportioned according to said relative weight.

4. The method of claim 1 , wherein said obtaining step further comprises the step of obtaining a maximum capacity.

5. The method of claim 1 , further comprising a plurality of said larger containers within a second larger parent container.

6. The method of claim 1 , further comprising the step of separating said plurality of containers into at least two groups, wherein an overutilized group comprises containers having a utilization that exceeds a global equilibrium capacity.

7. The method of claim 1 , further comprising the step of moving members of said overutilized group having a utilization below a threshold to said underutilized group.

8. An apparatus for determining a free capacity of at least one container in a plurality of containers competing for a total capacity of a larger container, said apparatus comprising:

a memory; and

at least one processor, coupled to the memory, operative to:

obtain a current utilization by each of said plurality of competing containers;

determine a first individual equilibrium capacity value for each of said plurality of competing containers by summing a minimum resource allocation amount corresponding to the given container and a portion of remaining available resource allocation, wherein said portion is pro-rated based on a relative resource weight of the given container;

determine an updated individual equilibrium capacity value for each of said plurality of competing containers with a current utilization that is less than the first individual equilibrium capacity value by summing the minimum resource allocation amount corresponding to the given container and a portion of remaining available resource allocation among (i) each of said plurality of competing containers having a current utilization that is greater than the first individual equilibrium capacity value and (ii) the given container, wherein said portion is pro-rated based on a relative resource weight of the given container;

determine an individual free capacity for each of said plurality of competing containers associated with each container, wherein said determining an individual free capacity for a given container comprises:

for each of said plurality of competing containers with a current utilization that is less than the first individual equilibrium capacity value, subtracting the current utilization associated with the given container from the updated equilibrium capacity associated with the given container; and

for each of said plurality of competing containers with a current utilization that is greater than the first individual equilibrium capacity value, subtracting the current utilization associated with the given container from the difference of the total capacity less the current utilization of each of said plurality of competing containers excluding the given container; and

allocate resources to the plurality of the competing containers based on the determined free capacity for each of the plurality containers.

9. The apparatus of claim 8 , wherein said wherein said processor is further configured to obtain a minimum capacity for each of said plurality of containers.

10. The apparatus of claim 9 , wherein capacity above said minimum capacity is apportioned according to said relative weight.

11. The apparatus of claim 8 , further comprising a plurality of said larger containers within a second larger parent container.

12. The apparatus of claim 8 , wherein said processor is further configured to separate said plurality of containers into at least two groups, wherein an overutilized group comprises containers having a utilization that exceeds a global equilibrium capacity.

13. The apparatus of claim 12 , wherein said processor is further configured to move members of said overutilized group having a utilization below a threshold to said underutilized group.

14. An article of manufacture for determining a free capacity of at least one container in a plurality of containers competing for a total capacity of a larger container, said article of manufacture comprising a non-transitory machine readable recordable storage medium containing one or more programs which when executed implement the steps of:

obtaining a current utilization by each of said plurality of competing containers;

determining a first individual equilibrium capacity value for each of said plurality of competing containers by summing a minimum resource allocation amount corresponding to the given container and a portion of remaining available resource allocation, wherein said portion is pro-rated based on a relative resource weight of the given container;

determining an updated individual equilibrium capacity value for each of said plurality of competing containers with a current utilization that is less than the first individual equilibrium capacity value by summing the minimum resource allocation amount corresponding to the given container and a portion of remaining available resource allocation among (i) each of said plurality of competing containers having a current utilization that is greater than the first individual equilibrium capacity value and (ii) the given container, wherein said portion is pro-rated based on a relative resource weight of the given container;

determining an individual free capacity for each of said plurality of competing containers associated with each container, wherein said determining an individual free capacity for a given container comprises:

for each of said plurality of competing containers with a current utilization that is less than the first individual equilibrium capacity value, subtracting the current utilization associated with the given container from the updated equilibrium capacity associated with the given container; and

for each of said plurality of competing containers with a current utilization that is greater than the first individual equilibrium capacity value, subtracting the current utilization associated with the given container from the difference of the total capacity less the current utilization of each of said plurality of competing containers excluding the given container; and

allocating resources to the plurality of the competing containers based on the determined free capacity for each of the plurality containers.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2010
From: BENEDETTI, FABIO; BOBROFF, NORMAN; FONG, LIANA LIYOW; LIU, YANBIN; SEELAM, SEETHARAMI R.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 024167/0303 →
Continuity (1)
Related Publication 20110247005A1 · Oct 6, 2011