Cache coherency mechanism using arbitration masks
First Claim
1. A method of operating a cache coherency mechanism for a distributed computer system that includes multiple processors, the method including the steps of:
- A. determining which processors have copies of data of interest;
B. determining paths through various system switching devices on routes from an associated home node to the processors that have copies of the data of interest;
C. encoding information that is indicative of the paths into one or more masks;
D. when the data of interest is the subject of an update operation, producing at the home node an invalidate message that includes the masks;
E. at the switching devices, decoding the applicable masks and routing the invalidate message over the paths indicated by the decoded information; and
F. at switching devices that connect to the processors, forwarding the invalidate message to the processors that have copies of the data of interest.
6 Assignments
0 Petitions
Accused Products
Abstract
A distributed processing system includes a cache coherency mechanism that essentially encodes network routing information into sectored presence bits. The mechanism organizes the sectored presence bits as one or more arbitration masks that system switches decode and use directly to route invalidate messages through one or more higher levels of the system. The lower level or levels of the system use local routing mechanisms, such as local directories, to direct the invalidate messages to the individual processors that are holding the data of interest.
88 Citations
17 Claims
-
1. A method of operating a cache coherency mechanism for a distributed computer system that includes multiple processors, the method including the steps of:
-
A. determining which processors have copies of data of interest;
B. determining paths through various system switching devices on routes from an associated home node to the processors that have copies of the data of interest;
C. encoding information that is indicative of the paths into one or more masks;
D. when the data of interest is the subject of an update operation, producing at the home node an invalidate message that includes the masks;
E. at the switching devices, decoding the applicable masks and routing the invalidate message over the paths indicated by the decoded information; and
F. at switching devices that connect to the processors, forwarding the invalidate message to the processors that have copies of the data of interest. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method of operating a cache coherency mechanism for a distributed computer system that includes multiple processors which are interconnected by layers of switching devices, the method including the steps of:
-
A. determining which processors have copies of data of interest;
B. determining paths through various system switching devices on routes from a home node to the processors that have copies of the data of interest;
C. encoding information that is indicative of the paths through a highest layer of the system into a first mask;
D. encoding information that is indicative of the paths through a next highest layer of the system into a next mask;
E. repeating step D for the remaining layers of the system;
F. when the data of interest is the subject of an update operation, producing at the home node an invalidate message that includes the masks;
G. at the switching devices in the highest layer, decoding the first mask and routing the invalidate message over the indicated paths;
H. at the switching devices in the remaining layers, decoding the corresponding masks and routing the invalidate message over the indicated paths through the layers; and
I. at switching devices that connect to the processors of interest, forwarding the invalidate message to the processors. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A distributed computer system including:
-
A. a plurality of processors, with one or more processors designated as home nodes;
B. a plurality of switching devices that interconnect the processors;
C. one or more encoders for encoding into one or more masks information relating to paths through the switching devices from an associated home node to the processors that have data of interest;
D. a cache coherency directory with entries for data of interest, the directory including in a given entry a. information that identifies the owner of the data, and b. one or more associated masks; and
E. one or more decoders at the switching devices, the decoder in a given switching device decoding an associated mask to set paths through the switching device for messages directed from the home node to processors that have copies of the associated data of interest. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
Specification