System and method for read migratory optimization in a cache coherency protocol
First Claim
Patent Images
1. A system comprising:
- a first node including data having an associated dirty (D) state; and
a second node operative to provide a source broadcast requesting the data, the first node being operative in response to the source broadcast to provide the data to the second node and to transition the state associated with the data at the first node from the D-state to an owner (O) state without concurrently updating memory, a shared (S) state being associated with the data at the second node.
1 Assignment
0 Petitions
Accused Products
Abstract
A system comprises a first node including data having an associated D-state and a second node operative to provide a source broadcast requesting the data. The first node is operative in response to the source broadcast to provide the data to the second node and transition the state associated with the data at the first node from the D-state to an O-state without concurrently updating memory. An S-state is associated with the data at the second node.
-
Citations
31 Claims
-
1. A system comprising:
-
a first node including data having an associated dirty (D) state; and
a second node operative to provide a source broadcast requesting the data, the first node being operative in response to the source broadcast to provide the data to the second node and to transition the state associated with the data at the first node from the D-state to an owner (O) state without concurrently updating memory, a shared (S) state being associated with the data at the second node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A multiprocessor network comprising:
-
memory for storing data;
a plurality of processor nodes in communication with each other and with the memory;
a first processor node of the plurality of processor nodes including data in a cache line having an associated dirty state; and
a second processor node of the plurality of processor nodes operative to provide a source broadcast read request to obtain the data;
the first processor node being programmed to respond to the source broadcast read request of the second processor node by providing a shared data response to the second processor node and transitioning the data in the cache line from the dirty state to an owner state without concurrently updating the memory with the data, the data being stored in a cache line at the second processor node associated with a shared state. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
-
19. A computer system comprising:
-
a source processor having an associated cache, the source processor operative to issue a source broadcast request for data;
memory storing the data; and
a target processor having an associated cache with a cache line that includes the data, the cache line having an associated dirty (D) state, the target processor being programmed to (i) when not writing the data in the cache line of the target processor, respond to the source broadcast request by providing a shared data response to the source processor and by transitioning the state of the data in the cache line from the D-state to an owner (O) state without concurrently updating the memory, and (ii) programmed to transition the state of the data in the cache line from the D-state to a modified (M) state in connection with writing the data in the cache line of the target processor, and the first processor node being operative while in the M-state to respond to the source broadcast request by providing an ownership data response to the another processor node and by transitioning the state of the data in the cache line from the M-state to an invalid (I) state without updating the memory. - View Dependent Claims (20, 21, 22, 23)
-
-
24. A system comprising:
-
means for broadcasting from a first node a request for data;
means for providing the data from a second node to the first node, the data at the second node having an associated dirty (D) state, a shared (S) state being associated with the data at the first node in response to the first node receiving the data from the second node; and
means for transitioning the state associated with the data at the second node from the D-state to an owner (O) state without concurrently updating memory of the system. - View Dependent Claims (25, 26, 27)
-
-
28. A method comprising:
-
broadcasting a request for data from a first node to other nodes of an associated system;
transitioning a state associated with the data at a second node from a dirty (D) state to an owner (O) state data without concurrently updating memory if the second node does not require to modify the data;
responding to the request broadcast from the first node by providing a response from the second node that includes a shared copy of the data; and
transitioning the state associated with the data at the first node to a shared (S) state in response to receiving the response from the second node. - View Dependent Claims (29, 30)
-
-
31. A computer system comprising a cache coherency protocol that is operative to permit read migration of data to a cache associated with a source processor from a cache associated with a target processor when the data is written to the cache associated with the target processor, the protocol being further operative to prevent future read migration of the data to the cache associated with the source processor from the cache associated with the target processor when the data is not written to the cache associated with the target processor.
Specification