A method and computer system for efficiently accessing resources in a multiprocessor computer system. Multiple resources are grouped into nodes and system resource descriptors are maintained as data structures. The method incorporates traversing a data structure to efficiently allocate resources within a grouping of nodes. Each node in the system is assigned a node identifying number. This number identifies a node location within a multiprocessor and is used to determine latency between nodes, either through an average latency table or a system interconnect connection table. The data structure comprises secondary data structures therein for storing processor, bus, memory and shared cache information. The data structure includes pointers to each of the secondary data structures. In addition, each node or grouping of nodes may include subnodes. As such, the system provides for a method of recursively accessing additional data structure levels for each level of nodes and/or subnodes in the system. In addition to the data structure and the secondary data structure, the system includes a memory map in the form of a data structure. This data structure stores information as to which node a given block of memory address space is located in. In addition, there is a flag for each memory block indicating whether the memory address is parity or error correcting code (ECC), or neither parity nor ECC protected. This flag is in the form of two bits for indicating the level of memory protection provided to a specific block of memory address. Accordingly, storing the system architecture information in a data structure format provides for an efficient method of accessing system resources and determining latency for specific processes and access patterns.

 
Web www.patentalert.com

< System and method for measuring SVG document similarity

> Methods and apparatus for a dynamic messaging engine

~ 00450