Performance monitoring in a NUMA computer
First Claim
1. A performance monitor, comprising:
- an interface suitable for coupling to an interconnect network of a computer system, the interconnect network linking a local node of the computer with at least one remote node of the computer system, wherein the interface unit is configured to extract a physical address information a transaction traversing the interconnect network;
a filter module adapted for associating the physical address with one of a plurality of memory blocks; and
an address mapping module configured to associate the memory block with at least one of a plurality of concurrently executing programs and, responsive thereto, incrementing at least one of a plurality of corresponding access counters.
1 Assignment
0 Petitions
Accused Products
Abstract
A performance monitor for a computer system that includes an interface, a filter module, and an address mapping module. The interface is suitable for coupling to an interconnect network of the computer system. The interconnect network links a local node of the system with at least one remote node of the system. The interface is configured to extract physical address information from a transaction traversing the interconnect network. The filter module associates the physical address with one of several memory blocks, where each memory block comprises a contiguous portion of the system'"'"'s physical address space. The address mapping module associates the identified memory block with at least one range of virtual addresses associated with at least one of a plurality of concurrently executing programs and increments each of a set of access counters. The association between the selected memory block and the access counters is facilitated by a pointer field corresponding to the memory block.
120 Citations
20 Claims
-
1. A performance monitor, comprising:
-
an interface suitable for coupling to an interconnect network of a computer system, the interconnect network linking a local node of the computer with at least one remote node of the computer system, wherein the interface unit is configured to extract a physical address information a transaction traversing the interconnect network;
a filter module adapted for associating the physical address with one of a plurality of memory blocks; and
an address mapping module configured to associate the memory block with at least one of a plurality of concurrently executing programs and, responsive thereto, incrementing at least one of a plurality of corresponding access counters. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer system, comprising:
-
a local node including at least one processor coupled to a local memory of the local node via a local bus of the local node;
at least one remote node, each of the remote nodes including at least one processor coupled to a local memory of the corresponding remote node via a local bus of the remote node;
an interconnect network coupling the remote node to the local node and via which the processor of the local node can access the local memory of the remote node and via which the processor of the remote node can access the local memory of the local node; and
a performance monitor including an interface coupled to the interconnect network and configured to extract physical address information from a transaction traversing the interconnect network, a filter module adapted for associating the physical address with one of a plurality of memory blocks, and a mapping module configured to associate the selected memory block with at least one of a plurality of concurrently executing programs and, responsive thereto, incrementing at least one of a plurality of corresponding access counters. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A method of monitoring performance of a computer system comprising:
-
defining physical address boundaries for a plurality of memory blocks;
concurrently executing a plurality of programs on a computer system comprising a local node and at least one remote node coupled to the local node via an interconnect network;
extracting physical address information from transactions traversing the interconnect network and associating the physical address with one of the plurality of memory blocks;
associating the selected memory block with at least one of a set of virtual address ranges associated with at least one of a plurality of programs, and;
incrementing access counters corresponding to each of the virtual address ranges. - View Dependent Claims (17, 18, 19, 20)
-
Specification