Non-uniform memory access (NUMA) data processing system having remote memory cache incorporated within system memory
First Claim
1. A non-uniform memory access (NUMA) computer system, comprising:
- a node interconnect; and
a first node and a second node coupled to said node interconnect for communication of data therebetween, wherein;
said first node includes a first system memory at a lowest level of volatile memory within said first node; and
said second node includes at least one processing unit coupled to a second memory hierarchy within said second node, said second memory hierarchy including one or more upper levels of volatile memory and a second system memory at a lowest level of volatile memory within said second node, wherein said second system memory includes;
a first set of storage locations allocated as a remote memory cache for storing data corresponding to data resident in said first system memory for which the first node is the home node;
a remote memory directory specifying contents of said remote memory cache; and
a second set of storage locations allocated for storage of data for which the second node is the home node.
1 Assignment
0 Petitions
Accused Products
Abstract
A non-uniform memory access (NUMA) computer system and associated method of operation are disclosed. The NUMA computer system includes at least a remote node and a home node coupled to an interconnect. The remote node contains at least one processing unit coupled to a remote system memory, and the home node contains at least a home system memory. To reduce access latency for data from other nodes, a portion of the remote system memory is allocated as a remote memory cache containing data corresponding to data resident in the home system memory. In one embodiment, access bandwidth to the remote memory cache is increased by distributing the remote memory cache across multiple system memories in the remote node.
-
Citations
15 Claims
-
1. A non-uniform memory access (NUMA) computer system, comprising:
-
a node interconnect; and
a first node and a second node coupled to said node interconnect for communication of data therebetween, wherein;
said first node includes a first system memory at a lowest level of volatile memory within said first node; and
said second node includes at least one processing unit coupled to a second memory hierarchy within said second node, said second memory hierarchy including one or more upper levels of volatile memory and a second system memory at a lowest level of volatile memory within said second node, wherein said second system memory includes;
a first set of storage locations allocated as a remote memory cache for storing data corresponding to data resident in said first system memory for which the first node is the home node;
a remote memory directory specifying contents of said remote memory cache; and
a second set of storage locations allocated for storage of data for which the second node is the home node. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A second node for a non-uniform memory access (NUMA) computer system including first node coupled to the second node by a node interconnect, said second node comprising:
-
a local interconnect;
a node controller coupled to said local interconnect and the node interconnect;
at least one processing unit coupled to said local interconnect; and
a remote memory hierarchy coupled to said at least one processing unit, wherein said remote memory hierarchy includes one or more upper levels of volatile memory and a remote system memory at a lowest level of volatile memory within said remote node, wherein said remote system memory includes;
a first set of storage locations allocated as a remote memory cache for storing data corresponding to data resident in a home system memory in the first node for which the first node is the home node;
a remote memory directory specifying contents of said remote memory cache; and
a second set of storage locations allocated for storage of data for which the second node is the home node. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A method of operating a non-uniform memory access (NUMA) computer system including a first node and a second node coupled by a node interconnect, said method comprising:
-
in a second system memory in said second node, allocating a first set of storage locations for storing data for which the second node is a home node and allocating a second set of storage locations as a remote memory cache for storing data corresponding to data resident in a first system memory in said first node for which said first node is the home node creating within said second system memory a remote memory directory specifying contents of said remote memory cache; and
in response to a request by a processing unit within said second node that specifies an address associated with a storage location in said first system memory, servicing said request by accessing said remote memory in said second system memory. - View Dependent Claims (12, 13, 14, 15)
-
Specification