IP Library › Granted Patent US 6,859,864
Granted Patent B2
US 6,859,864 · App. 09/752,576 · Granted Feb 22, 2005

Mechanism for initiating an implicit write-back in response to a read or snoop of a modified cache line

Assignee: Intel Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,859,864
App. No.
09/752,576
Granted
Feb 22, 2005
Kind
B2
Abstract

A method and apparatus are described for providing an implicit write-back in a distributed shared memory environment implementing a snoop based architecture. A requesting node submits a single read request to a snoop based architecture controller switch. The switch recognizes that another node other than the requesting node and the home node for the desired data has a copy of the data. The switch directs the request to the responding node that is not the home node. The responding node, having modified the data, provides a single response back to the switch that causes the switch to both update the data at the home node and answer the requesting node. The updating of the data at the home node is done without receiving an explicit write instruction from the requesting node.

Claims (30)

1. A method comprising:

receiving a request to read a modified cache line at a responding node of a shared memory multiprocessor architecture from a requesting node of the shared memory multiprocessor architecture; and

responding to the request by updating a memory at a home node with data read from the modified cache line, and by providing an answer to the requesting node, wherein the home node is different from the responding node.

2. The method of claim 1 , wherein the answer includes a copy of the data read from the modified cache line.

3. The method of claim 1 , wherein the response further provides a status of the modified cache line.

4. The method of claim 3 , wherein the status indicates one of:

the modified cache line is transitioning from a modified state to an invalid state; and

the modified cache line is transitioning from a modified state to a shared state.

5. The method of claim 1 , further comprising providing a completion response to the requesting node.

6. The method of claim 3 , wherein the status indicates a cache coherence protocol type used by the responding node.

7. A shared memory multiprocessor system comprising:

a plurality of node controllers and a switch coupled to each of the plurality of node controllers configured to:

transmit a read request regarding a modified cache line from a first node controller of the plurality of node controllers through the switch to a second node controller of the plurality of node controllers, wherein the second node controller is distinct from the first node controller; and

in response to receiving the read request regarding the modified cache line, the second node controller instructs the switch to update a home memory residing exclusively on a third node controller of the plurality of node controllers.

8. The shared memory multiprocessor system of claim 7 wherein the switch maintains a presence vector.

9. The shared memory multiprocessor system of claim 8 wherein the presence vector maintains a status of a cache line for each participating node controller of the plurality of node controllers.

10. The shared memory multiprocessor system of claim 9 wherein the presence vector indicates if the cache line for each corresponding participating node controller contains a copy of a contents stored in the home memory.

11. A method comprising a responding node initiating an implicit write-back in response to a read request directed to a modified cache line at the responding node.

12. The method of claim 11 , wherein the implicit write-back includes information causing the read request to be answered and a home memory to be updated.

13. The method of claim 11 , wherein the implicit write-back further includes information identifying a state of the modified cache line.

14. A machine-readable medium having stored thereon data representing sequences of instructions, the sequences of instructions which, when executed by a processor, cause the processor to:

receive a request to read a cache line at a responding node of a shared memory multiprocessor architecture from a requesting node of the shared memory multiprocessor architecture; and

respond to the request by updating a memory at a home node with data read from the cache line, and by providing an answer to the requesting node, wherein the home node is different from the responding node.

15. The machine-readable medium of claim 14 , wherein the answer includes a copy of the data read from the cache line.

16. The machine-readable medium of claim 14 , wherein the response further provides a status of the cache line.

17. The machine-readable medium of claim 16 , wherein the status indicates one of:

the cache line is transitioning from a modified state to an invalid state; and

the cache line is transitioning from a modified state to a shared state.

18. The machine-readable medium of claim 14 , wherein the sequence of instructions further causes the processor to provide a completion response to the requesting node.

19. The machine-readable medium of claim 16 , wherein the status indicates a cache coherence protocol type used by the responding node.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2005
From: CRETA, KENNETH C.
To: INTEL CORPORATION
Reel/Frame 015529/0846 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 19, 2002
From: KHARE, MANOJ; LOOI, LILY P.; KUMAR, AKHILESH
To: INTEL CORPORATION
Reel/Frame 013971/0321 →
Continuity (1)
Related Publication 20030131202A1 · Jul 10, 2003