Allocating heaps in NUMA systems
First Claim
Patent Images
1. A method comprising:
- operating a computer system comprising a plurality of processor groups and a plurality of memory banks, each of said processor groups having a corresponding one of said memory banks;
while operating said computer system, receiving a first process comprising instructions that operate on a first memory object;
selecting a first processor being contained in a first processor group, said first processor group corresponding to a first memory bank;
allocating first heap memory to said first process from said first memory bank; and
executing said first process on said first processor using said first heap memory.
2 Assignments
0 Petitions
Accused Products
Abstract
Processes may be assigned heap memory within locally accessible memory banks in a multiple processor NUMA architecture system. A process scheduler may deploy a process on a specific processor and may assign the process heap memory from a memory bank associated with the selected processor. The process may be a functional process that may not change state of other memory objects, other than the input or output memory objects defined in the functional process.
195 Citations
18 Claims
-
1. A method comprising:
-
operating a computer system comprising a plurality of processor groups and a plurality of memory banks, each of said processor groups having a corresponding one of said memory banks; while operating said computer system, receiving a first process comprising instructions that operate on a first memory object; selecting a first processor being contained in a first processor group, said first processor group corresponding to a first memory bank; allocating first heap memory to said first process from said first memory bank; and executing said first process on said first processor using said first heap memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system comprising:
-
a plurality of processors, each of said processors belonging to one of a plurality of processor groups; a plurality of memory banks, each of said memory banks being assigned to one of said processor groups; a process scheduler that; receives a first process comprising instructions that operate on a first memory object; selects a first processor being contained in a first processor group, said first processor group corresponding to said first memory bank; allocates heap memory for said first process within said first memory bank; and executes said first process on said first processor. - View Dependent Claims (15, 16, 17, 18)
-
Specification