Abstract: In a distributed shared memory system, clusters of symmetric multi-processors are connected to each other by a network. Each symmetric multi-processor includes a plurality of processors, a memory having addresses, and an input/output interface to interconnect the processors. A software implemented method enables data sharing between the clusters of symmetric multi-processors using variable sized quantities of data called blocks. A set of the addresses of the memories are designated as virtual shared addresses to store shared data, and a portion of the virtual shared addresses are allocated to store a shared data structure as one or more blocks. The size of a particular allocated block can vary for different shared data structures. Each block includes an integer number of lines, and each line includes a predetermined number of bytes of shared data. Directory information of a particular block is stored in the memory of a processor designed as the home of the block.
Type:
Grant
Filed:
February 3, 1997
Date of Patent:
September 7, 1999
Assignee:
Digital Equipment Corporation
Inventors:
Daniel J. Scales, Kourosh Gharachorloo, Anshu Aggarwal
Abstract: A computer implemented method for dynamically setting hint fields of instructions. Machine executable code is modified during execution to locate and replace instructions having hint fields. The instructions are replaced with calls to intercept the execution flow and redirect to procedures of a monitor. During execution of the machine executable code, hint information is recorded in a memory. The recorded hint state information is analyzed to determine the most frequently occurring or best hint value. When a best hint value has been determined, the replaced instructions are restored with best hint values.