The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Jun. 17, 2008
Filed:
Sep. 26, 2003
Kourosh Gharachorloo, Menlo Park, CA (US);
Luiz A. Barroso, Mountain View, CA (US);
Robert J. Stets, Jr., Palo Alto, CA (US);
Mosur K. Ravishankar, Mountain View San Jose, CA (US);
Andreas Nowatzyk, San Jose, CA (US);
Kourosh Gharachorloo, Menlo Park, CA (US);
Luiz A. Barroso, Mountain View, CA (US);
Robert J. Stets, Jr., Palo Alto, CA (US);
Mosur K. Ravishankar, Mountain View San Jose, CA (US);
Andreas Nowatzyk, San Jose, CA (US);
Hewlett-Packard Development Company, L.P., Houston, TX (US);
Abstract
A protocol engine is for use in each node of a computer system having a plurality of nodes. Each node includes an interface to a local memory subsystem that stores memory lines of information, a directory, and a memory cache. The directory includes an entry associated with a memory line of information stored in the local memory subsystem. The directory entry includes an identification field for identifying sharer nodes that potentially cache the memory line of information. The identification field has a plurality of bits at associated positions within the identification field. Each respective bit of the identification field is associated with one or more nodes. The protocol engine furthermore sets each bit in the identification field for which the memory line is cached in at least one of the associated nodes. In response to a request for exclusive ownership of a memory line, the protocol engine sends an initial invalidation request to no more than a first predefined number of the nodes associated with set bits in the identification field of the directory entry associated with the memory line.