Methods and apparatus for responding to a request cluster
First Claim
1. A computer system, comprising:
- a home cluster including a first plurality of processors and a home cache coherence controller, the first plurality of processors and the home cache coherence controller interconnected in a point-to-point architecture;
a request cluster including a second plurality of processors and a request cache coherence controller, the second plurality of processors and the request cache coherence controller interconnected in a point-to-point architecture, the request cache coherence controller configured to receive a cache access request from a request processor and forward the request to the home cache coherence controller;
wherein the home cache coherence controller is configured to send a probe to N remote cache coherence controllers in N remote clusters upon receiving the cache access request from the request cache coherence controller, wherein the probe includes a data value corresponding to N for the request cache coherence controller to determine the number of probe responses corresponding to the cache access request to be transmitted directly from a plurality of remote cache coherence controllers to the request cache coherence controller, wherein the home cache coherence controller extracts the value of N included in the probe received from the home cache coherence controller and signals the request processor after receiving responses from local nodes and the expected number of responses from remote cache coherence controllers.
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. A home cluster of processors receives a cache access request from a request cluster. The home cluster includes mechanisms for instructing probed remote clusters to respond to the request cluster instead of to the home cluster. The home cluster can also include mechanisms for reducing the number of probes sent to remote clusters. Techniques are also included for providing the requesting cluster with information to determine the number of responses to be transmitted to the requesting cluster as a result of the reduction in the number of probes sent at the home cluster.
30 Citations
35 Claims
-
1. A computer system, comprising:
-
a home cluster including a first plurality of processors and a home cache coherence controller, the first plurality of processors and the home cache coherence controller interconnected in a point-to-point architecture; a request cluster including a second plurality of processors and a request cache coherence controller, the second plurality of processors and the request cache coherence controller interconnected in a point-to-point architecture, the request cache coherence controller configured to receive a cache access request from a request processor and forward the request to the home cache coherence controller; wherein the home cache coherence controller is configured to send a probe to N remote cache coherence controllers in N remote clusters upon receiving the cache access request from the request cache coherence controller, wherein the probe includes a data value corresponding to N for the request cache coherence controller to determine the number of probe responses corresponding to the cache access request to be transmitted directly from a plurality of remote cache coherence controllers to the request cache coherence controller, wherein the home cache coherence controller extracts the value of N included in the probe received from the home cache coherence controller and signals the request processor after receiving responses from local nodes and the expected number of responses from remote cache coherence controllers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method for managing data access, comprising:
-
transmitting a request to a home cluster comprising a plurality of processors coupled to a home cache coherence controller, the request received from one of a plurality of request processors in a request cluster; receiving a probe from the home cluster, the probe corresponding to the request and including a data value N corresponding to the number of probes sent to a plurality of remote clusters, the data value N for determining the number of expected probe responses to be transmitted directly from the plurality of remote clusters to a request cluster instead of from the plurality of remote clusters to the home cluster; receiving at a request cluster a plurality of probe responses directly transmitted from the plurality of remote clusters, the plurality of probe responses corresponding to the request; receiving a plurality of probe responses from the plurality of request cluster nodes signaling the request processor after receiving the plurality of probe responses from the plurality of request cluster nodes and the expected number of probe responses from the plurality of remote clusters. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. An apparatus for managing data access, comprising:
-
means for transmitting a request to a home cluster comprising a plurality of processors coupled to a home cache coherence controller, the request received from one of a plurality of request processors in a request cluster; means for receiving a probe from the home cluster, the probe corresponding to the request and including a data value N corresponding to the number of probes sent to a plurality of remote clusters, the data value N for determining the number of expected probe responses to be transmitted directly from the plurality of remote clusters to a request cluster instead of from the plurality of remote clusters to the home cluster; means for receiving at a request cluster a plurality of probe responses directly transmitted from the plurality of remote clusters, the plurality of probe responses corresponding to the request; means for receiving a plurality of probe responses from the plurality of request cluster means for signaling the request processor after receiving the plurality of probe responses from the plurality of request cluster nodes and the expected number of probe responses from the plurality of remote clusters. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33, 34, 35)
-
Specification