Memory allocation in a multi-node computer
AssigneeInternational Business Machines Corporation
InventorsKenneth R. Allen, Rebecca N. B. Legler, Kenneth C. Vossen
Life of this patent
Estimating the term…
Abstract
Evaluating memory allocation in a multi-node computer including calculating, in dependence upon a normalized measure of page frame demand, a weighted coefficient of memory affinity, the weighted coefficient representing desirability of allocating memory from the node, and allocating memory may include allocating memory in dependence upon the weighted coefficient of memory affinity.
Claims13
A method for memory allocation in a multi-node computer, the method comprising:
- evaluating, a plurality of times throughout operation of the multi-node computer, memory affinity for a node in dependence upon page frame demand for page frames on the node, including:
- calculating a normalized measure of page faults including multiplying a measure of page faults by a normalizing factor, wherein the normalizing factor is the proportion of memory installed on other nodes relative to the memory installed on all the nodes of the system;
- evaluating memory affinity in dependence upon the normalized measure of page faults, wherein a page fault is an interrupt triggered by a memory management unit (‘MMU’) in response to a request from a process for memory access to a page in virtual memory that is not mapped to a page frame in memory;
- and
- calculating, in dependence upon the normalized measure of page faults, a weighted coefficient of memory affinity, the weighted coefficient representing desirability of allocating memory from the node;
- and
- allocating, for each evaluation dynamically throughout operation of the multi-node computer in dependence upon the weighted coefficient of memory affinity, memory.
An apparatus for memory allocation in a multi-node computer, the apparatus comprising a multiplicity of computer processors and computer memory operatively coupled to the computer processors, the computer memory having disposed within it computer program instructions capable of:
- evaluating, a plurality of times throughout operation of the multi-node computer, memory affinity for a node in dependence upon page frame demand for page frames on the node, including:
- calculating a normalized measure of page faults including multiplying a measure of page faults by a normalizing factor, wherein the normalizing factor is the proportion of memory installed on other nodes relative to the memory installed on all the nodes of the system;
- evaluating memory affinity in dependence upon the normalized measure of page faults, wherein a page fault is an interrupt triggered by a memory management unit (‘MMU’) in response to a request from a process for memory access to a page in virtual memory that is not mapped to a page frame in memory;
- and
- calculating, in dependence upon the normalized measure of page faults, a weighted coefficient of memory affinity, the weighted coefficient representing desirability of allocating memory from the node;
- and
- allocating, for each evaluation dynamically throughout operation of the multi-node computer in dependence upon the weighted coefficient of memory affinity, memory.
A computer program product for memory allocation in a multi-node computer, the computer program product disposed upon a non-transitory computer readable medium, the computer program product comprising computer program instructions capable of:
- evaluating, a plurality of times throughout operation of the multi-node computer, memory affinity for a node in dependence upon page frame demand for page frames on the node, including:
- calculating a normalized measure of page faults including multiplying a measure of page faults by a normalizing factor, wherein the normalizing factor is the proportion of memory installed on other nodes relative to the memory installed on all the nodes of the system;
- evaluating memory affinity in dependence upon the normalized measure of page faults, wherein a page fault is an interrupt triggered by a memory management unit (‘MMU’) in response to a request from a process for memory access to a page in virtual memory that is not mapped to a page frame in memory;
- and
- calculating, in dependence upon the normalized measure of page faults, a weighted coefficient of memory affinity, the weighted coefficient representing desirability of allocating memory from the node;
- and
- allocating, for each evaluation dynamically throughout operation of the multi-node computer in dependence upon the weighted coefficient of memory affinity, memory.
Dependencies are inferred from the claim text.