IP Library Granted Patent US 9,483,315
Granted Patent B2
US 9,483,315 · App. 14/612,564 · Granted Nov 1, 2016

Autonomous dynamic optimization of platform resources

Inventors: Anjan Kumar Guttahalli Krishna (Hyderabad, IN); Edward C. Prosser (Rochester, MN)
Assignee: International Business Machines Corporation
G06F9/5077G06F9/5016G06F12/023G06F2212/1044
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,483,315
App. No.
14/612,564
Granted
Nov 1, 2016
Kind
B2
Abstract

Systems and program products for dynamically optimizing platform resource allocation of a logically-partitioned data processing system. Processor and memory resources are allocated to logical partitions of the data processing system. After allocating the processor and memory resources to the plurality of logical partitions, local and non-local memory accesses are monitored for the logical partitions. Based at least in part on the local and non-local memory accesses, a determination is made whether to reallocate the processor and memory resources of the logical partitions. Responsive to determining to reallocate the processor and memory resources, the processor and memory resources are dynamically reallocated to the logical partitions of the data processing system.

Claims (30)

1. A logically-partitioned data processing system comprising:

a plurality of processors;

at least one memory, wherein processor resources of the plurality of processors and memory resources of the at least one memory are allocated to a plurality of logical partitions; and

program code configured to:

after the processor and memory resources are allocated to the plurality of logical partitions in the logically-partitioned data processing system, monitor local and non-local memory accesses by the plurality of logical partitions;

determine whether to reallocate the processor and memory resources for the plurality of logical partitions based on the monitored local and non-local memory accesses, wherein the determination by the program code of whether to reallocate the processor and memory resources for the plurality of logical partitions based on the monitored local and non-local memory accesses is based at least in part on a ratio of non-local memory accesses to local memory accesses for each memory resource of each logical partition; and

in response to determining to reallocate the processor and memory resources for the plurality of logical partitions, dynamically reallocate the processor and memory resources to the plurality of logical partitions in the logically-partitioned data processing system.

2. The data processing system of claim 1 , wherein the program code is further configured to monitor the data processing system to detect a dynamic system configuration change, wherein the program code is configured to monitor the local and non-local memory accesses, determine whether to reallocate the processor and memory resources for the plurality of logical partitions, and dynamically reallocate the processor and memory resources to the plurality of logical partitions in response to detecting the dynamic system resource change.

3. The data processing system of claim 2 , wherein the data processing system is monitored to detect a dynamic system resource change based at least in part on state information maintained by the data processing system corresponding to hardware resources of the data processing system.

4. The data processing system of claim 1 , wherein the determination by the program code of whether to reallocate the processor and memory resources for the plurality of logical partitions is based at least in part on whether the processor and memory resources are allocated sub-optimally.

5. The data processing system of claim of claim 1 , wherein the processor and memory resources are reallocated to the plurality of logical partitions in the logically-partitioned data processing system based at least in part on the ratio of non-local memory accesses to local memory accesses for each memory resource of each logical partition.

6. The data processing system of claim 1 , wherein the processor and memory resources are reallocated to the plurality of logical partitions by:

reallocating a particular memory resource to a different logical partition based at least in part on a particular processor of the different logical partition being associated with non-local memory accesses of the particular memory resource.

7. The data processing system of claim 1 , wherein the program code is further configured to stop monitoring of local and non-local memory accesses by the plurality of logical partitions responsive to dynamically reallocation of the processor and memory resources to the plurality of logical partitions in the logically partitioned data processing system.

8. The data processing system of claim 1 , wherein the program code is further configured to generate an optimization notification for at least one operating system executing on each logical partition prior to dynamic reallocation of the processor and memory resources to the plurality of logical partitions in the logically-partitioned data processing system, wherein the optimization notification identifies the processor and memory resources to be reallocated.

9. A program product, comprising:

a non-transitory computer readable medium; and

program code stored on the non-transitory computer readable medium and configured upon execution to:

allocate processor and memory resources to a plurality of logical partitions in a logically-partitioned data processing system;

after the processor and memory resources are allocated to the plurality of logical partitions in the logically-partitioned data processing system, monitor local and non-local memory accesses by the plurality of logical partitions;

determine whether to reallocate the processor and memory resources for the plurality of logical partitions based on the monitored local and non-local memory accesses, wherein the determination by the program code of whether to reallocate the processor and memory resources for the plurality of logical partitions based on the monitored local and non-local memory accesses is based at least in part on a ratio of non-local memory accesses to local memory accesses for each memory resource of each logical partition; and

in response to determining to reallocate the processor and memory resources for the plurality of logical partitions, dynamically reallocate the processor and memory resources to the plurality of logical partitions in the logically-partitioned data processing system.

10. The program product of claim 9 , wherein the program code is further configured to monitor the data processing system to detect a dynamic system configuration change, wherein the program code is configured to monitor the local and non-local memory accesses, determine whether to reallocate the processor and memory resources for the plurality of logical partitions, and dynamically reallocate the processor and memory resources to the plurality of logical partitions in response to detecting the dynamic system resource change.

11. The program product of claim 10 , wherein the data processing system is monitored to detect a dynamic system resource change based at least in part on state information maintained by the data processing system corresponding to hardware resources of the data processing system.

12. The program product of claim 9 , wherein the determination by the program code of whether to reallocate the processor and memory resources for the plurality of logical partitions is based at least in part on whether the processor and memory resources are allocated sub-optimally.

13. The program product of claim of claim 9 , wherein the processor and memory resources are reallocated to the plurality of logical partitions in the logically-partitioned data processing system based at least in part on the ratio of non-local memory accesses to local memory accesses for each memory resource of each logical partition.

14. The program product of claim 9 , wherein the processor and memory resources are reallocated to the plurality of logical partitions by:

reallocating a particular memory resource to a different logical partition based at least in part on a particular processor of the different logical partition being associated with non-local memory accesses of the particular memory resource.

15. The program product of claim 9 , wherein the program code is further configured to stop monitoring of local and non-local memory accesses by the plurality of logical partitions responsive to dynamically reallocation of the processor and memory resources to the plurality of logical partitions in the logically partitioned data processing system.

16. The program product of claim 9 , wherein the program code is further configured to generate an optimization notification for at least one operating system executing on each logical partition prior to dynamic reallocation of the processor and memory resources to the plurality of logical partitions in the logically-partitioned data processing system, wherein the optimization notification identifies the processor and memory resources to be reallocated.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2015
From: GUTTAHALLI KRISHNA, ANJAN KUMAR; PROSSER, EDWARD C.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 034875/0588 →
Continuity (1)
Related Publication 20160224388A1 · Aug 4, 2016