Methods and apparatus for providing cache state information
First Claim
Patent Images
1. A computer system, comprising:
- a request cluster including a first plurality of nodes and a request cache coherence controller, the first plurality of nodes having a first plurality of processors and a first plurality of caches associated with the first plurality of processors, the request cache coherence controller associated with a remote data cache, wherein the remote data cache holds data in memory lines of nonrequest clusters;
a home cluster including a second plurality of processors and a request cache coherence controller, the second plurality of processors interconnected in a point-to-point architecture.
11 Assignments
0 Petitions
Accused Products
Abstract
According to the present invention, methods and apparatus are provided for increasing the efficiency of data access in a multiple processor, multiple cluster system. Mechanisms for allowing a variety of transactions to complete locally are implemented by providing remote data caches associated with the various clusters in the system. The remote data caches receive data and state information for memory lines held in remote clusters. State information is provided to the remote data cache using various mechanisms including a coherence directory and augmented source done messages.
-
Citations
43 Claims
-
1. A computer system, comprising:
-
a request cluster including a first plurality of nodes and a request cache coherence controller, the first plurality of nodes having a first plurality of processors and a first plurality of caches associated with the first plurality of processors, the request cache coherence controller associated with a remote data cache, wherein the remote data cache holds data in memory lines of nonrequest clusters;
a home cluster including a second plurality of processors and a request cache coherence controller, the second plurality of processors interconnected in a point-to-point architecture. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method for maintaining coherency, the method comprising:
-
receiving a write back at a request cache coherence controller from a request cluster processor, the write back associated with a memory line evicted from a cache corresponding to the request cluster processor;
writing data associated with the memory line into a remote data cache, wherein the remote data cache holds data in memory lines in the address space of non-request clusters;
receiving information indicating whether the memory line was held in the modified or owned state. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A method for maintaining coherency, the method comprising:
-
receiving a read block response at a request cache coherence controller from a home cluster, the read block response associated with a memory line; and
writing data associated with the read block response into a remote data cache, wherein the remote data cache holds data in memory lines in the address space of non-request clusters. - View Dependent Claims (25, 26)
-
-
27. A computer system, comprising:
-
a request cluster including a first plurality of nodes and a request cache coherence controller, the first plurality of nodes having a first plurality of processors and a first plurality of caches associated with the first plurality of processors, the request cache coherence controller associated with a remote data cache, wherein the remote data cache holds data in memory lines of nonrequest clusters;
a home cluster including a second plurality of processors and a request cache coherence controller, the second plurality of processors interconnected in a point-to-point architecture;
wherein the first plurality of processors are operable to send information to the request cache coherence controller indicating whether a cache line is owned or modified in order to modify an entry in the remote data cache. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35, 36)
-
-
37. A computer system, comprising:
-
means for receiving a write back at a request cache coherence controller from a request cluster processor, the write back associated with a memory line evicted from a cache corresponding to the request cluster processor;
means for writing data associated with the memory line into a remote data cache, wherein the remote data cache holds data in memory lines in the address space of non-request clusters;
means for receiving information indicating whether the memory line was held in the modified or owned state. - View Dependent Claims (38, 39, 40, 41, 42)
-
-
43. A computer system, comprising:
-
means for receiving a read block response at a request cache coherence controller from a home cluster, the read block response associated with a memory line; and
means for writing data associated with the read block response into a remote data cache, wherein the remote data cache holds data in memory lines in the address space of non-request clusters.
-
Specification