IP Library Granted Patent US 7,290,260
Granted Patent B2
US 7,290,260 · App. 10/370,236 · Granted Oct 30, 2007

Dynamic processor redistribution between partitions in a computing system

Assignee: International Business Machines Corporation
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 7,290,260
App. No.
10/370,236
Granted
Oct 30, 2007
Kind
B2
Abstract

A method, apparatus and program product for the dynamic reallocation of shared processing resources in a computing system is provided. The method/apparatus/program product attempts to allocate the shared processing resource among the two or more logical partitions in the computing system based on a current utilization of the shared processing resource among each of the two or more logical partitions and a current utilization of shared processing resource for the computing system as a whole. More specifically, the shared processing resource is reallocated from logical partitions having a relatively lower current utilization of their owned portion of the shared processing resource to logical partitions having a relatively high current utilization of their owned portion of the shared processing resource.

Claims (34)

1. An apparatus comprising:

at least one processor;

a memory coupled to the at least one processor;

two or more logical partitions defined on the apparatus, wherein each of the two or more logical partitions owns portions of a shared processing resource; and

a dynamic processor allocation mechanism residing in the memory and executed by the at least one processor, wherein the dynamic processor allocation mechanism reallocates the shared processing resource among the two or more logical partitions and wherein the amount of shared processing resource eligible to be reallocated is calculated on-the-fly by the dynamic processor allocation mechanism prior to the reallocation, the calculation comprising the steps of:

determining a current utilization of the shared processing resource for each of the two or more logical partitions;

determining a current utilization of the shared processing resource for the apparatus as a whole;

constructing, for each of the two or more logical partitions, a bid determined by dividing the current utilization of the partition by the utilization of the apparatus as a whole, wherein any partition having a bid less than 1 is classified as potential donating partition, and any partition having a bid greater than 1 is classified as a potential recipient partition;

calculating, for each potential recipient partition, an amount of resource desired to be received by multiplying the bid by a number of processing units currently assigned to the potential recipient partition, then subtracting the number of processing units currently assigned to the potential recipient partition; and

calculating, for each potential donating partition, an amount of resource available for donation by subtracting the bid from 1, then multiplying the result by the number of processing units currently assigned to the potential donating partition.

2. The apparatus of claim 1 , wherein the execution of the calculation occurs on a periodic, predetermined time interval.

3. The apparatus of claim 1 , wherein a time interval between successive executions of the function is dynamically adjusted.

4. The apparatus of claim 1 , wherein the shared processing resource comprises the at least one processor.

5. The apparatus of claim 1 , wherein a reallocation group is defined to include at least two of the two or more logical partitions, wherein the dynamic processor allocation mechanism is restricted to operate only on logical partitions defined to exist within the allocation group.

6. The apparatus of claim 5 , wherein multiple reallocation groups exist within the apparatus.

7. The apparatus of claim 1 wherein the potential donating partition having the lowest bid is the first partition to donate its resource during the reallocation.

8. The apparatus of claim 1 wherein the potential recipient partition having the highest bid is the first partition to receive resource during the reallocation.

9. The apparatus of claim 1 , wherein the potential recipient partition becomes eligible to receive additional processing resource when its current resource utilization is greater than the current resource utilization for the apparatus as a whole plus a predefined variance.

10. The apparatus of claim 1 , wherein the potential donating partition becomes eligible to donate excess processing resource when its current resource utilization is less than the current resource utilization for the apparatus as a whole minus a predefined variance.

11. A computer-implemented method for managing a shared processing resource in a computer system that includes two or more logical partitions that each own portions of the shared processing resource, the method comprising the steps of:

determining a current utilization of the shared processing resource for each of the two or more logical partitions and a current utilization of the shared processing resource for the computer system as a whole;

constructing, for each of the two or more logical partitions, a bid determined by dividing the current utilization of the partition by the utilization of the apparatus as a whole, wherein any partition having a bid less than 1 is classified as potential donating partition, and any partition having a bid greater than 1 is classified as a potential recipient partition;

calculating, for each potential recipient partition, an amount of resource desired to be received by multiplying the bid by a number of processing units currently assigned to the potential recipient partition, then subtracting the number of processing units currently assigned to the potential recipient partition; and

calculating, for each potential donating partition, an amount of resource available for donation by subtracting the bid from 1, then multiplying the result by the number of processing units currently assigned to the potential donating partition; and

reallocating the shared processing resource among the two or more logical partitions by reassigning at least some of the amount of resource available for donation from the potential donating partitions to the potential recipient partitions.

12. The method of claim 11 , wherein the shared processing resource comprises the at least one processor.

13. A program product comprising:

a dynamic processor allocation mechanism which reallocates a shared processing resource among two or more logical partitions in a computer system, wherein the amount of shared processing resource eligible to be reallocated is calculated on-the-fly by the dynamic processor allocation mechanism prior to the reallocation, the calculation comprising the steps of:

determining a current utilization of the shared processing resource for each of the two or more logical partitions;

determining a current utilization of the shared processing resource for the apparatus as a whole;

constructing, for each of the two or more logical partitions, a bid determined by dividing the current utilization of the partition by the utilization of the apparatus as a whole, wherein any partition having a bid less than 1 is classified as potential donating partition, and any partition having a bid greater than 1 is classified as a potential recipient partition;

calculating, for each potential recipient partition, an amount of resource desired to be received by multiplying the bid by a number of processing units currently assigned to the potential recipient partition, then subtracting the number of processing units currently assigned to the potential recipient partition; and

calculating, for each potential donating partition, an amount of resource available for donation by subtracting the bid from 1, then multiplying the result by the number of processing units currently assigned to the potential donating partition; and computer readable signal bearing recordable media bearing the dynamic processor allocation mechanism.

14. The program product of claim 13 , wherein the shared processing resource comprises at least one processor.

Assignments (3)
CHANGE OF NAME Recorded Oct 5, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044127/0735 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2011
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: GOOGLE INC.
Reel/Frame 026894/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2003
From: MILLER, MICAH WILLIAM
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 013807/0503 →
Continuity (1)
Related Publication 20040168170A1 · Aug 26, 2004