Patent ID: 7472246
Filing Date: 2008-12-30
Classification: G06F

Abstract:
1. A method for automatically reallocating memory among a plurality of logical partitions comprising: defining a plurality of donor candidates, wherein each donor candidate is a system designated by a user as eligible to donate memory to another system; defining a plurality of recipient candidates, wherein each recipient candidate is a system designated by the user as eligibleto receive memory from another system; selecting a performance parameter, wherein the performance parameter is a measure of memory paging activity; defining a memory grain; defining a capture interval, wherein the capture interval is a first interval of time; defining a sampling interval, wherein the sampling interval is a second interval of time at least as long as the first interval of time; for each donor candidate and for each recipient candidate, capturing a value of the performance parameter for each capture interval within the sampling interval; for each donor candidate and for each recipient candidate, calculating a composite performance parameter equal to an average of the performance parameters captured for said each donor candidate and for said each recipient candidate during the sampling interval; defining a donor load threshold, wherein the donor load threshold is a first value of the composite performance parameter; defining a recipient load threshold, wherein the recipient load threshold is a second value of the composite performance parameter; identifying a donor system, wherein the donor system is a donor candidate with a composite performance parameter below the donor load threshold; identifying a recipient system, wherein the recipient system is a recipient candidate with a composite performance parameter greater than the recipient load threshold; calculating a recipient workload ratio of the recipient system, wherein the recipient workload ratio is equal to the composite performance parameter of the recipient system divided by the recipient load threshold; defining a memory multiplier, wherein the memory multiplier associates the recipient workload ratio of the recipient system with a number of memory grains; and reallocating the number of memory grains from the donor system to the recipient system; wherein memory paging activity is a number of pages read into a memory over the capture interval; wherein the memory grain is a finest granularity of memory which may be reallocated from a donor candidate to a recipient candidate; and wherein the memory multiplier is a table associating recipient workload ratios with numbers of memory grains to reallocate, and wherein the number of memory grains to reallocate increases as the recipient workload ratio increases.