Patent ID: 7370154

Claim:
A method comprising: receiving in an Ingrained Sharing Directory Cache (ISDC) an incoming operation request including an associated incoming memory address; determining if the incoming operation request is an Ingrained Sharing Directory Storage (ISDS) data reply, wherein the ISDS data reply includes an indication of system caches sharing a memory line having the same memory address as the incoming memory address, wherein the indication is extracted from two or more ISDS entries matching the incoming memory address; completing a pending ISDC entry if the incoming operation request is an ISDS data reply, wherein completing includes locating a pending ISDC operation associated with the ISDS data reply in an ISDC pending request queue; if the incoming operation request is not an ISDS data reply and if there is an ISDC entry associated with the incoming operation request, performing the incoming operation request; and if the incoming operation request is not an ISDS data reply and if there is no ISDC entry associated with the incoming operation request, creating an ISDC entry, wherein creating includes: requesting information associated with the incoming memory address from the ISDS; evicting another ISDC entry if there is no free ISDC entry, wherein evicting includes: requesting the ISDS to store the information for the evicted ISDC entry, wherein requesting includes transferring to the ISDS bit-vector information associated with the evicted ISDC entry, wherein the bit-vector information is used by the ISDS to select two or more ISDS cells, wherein each of the two or more ISDS cells maintains a dynamic full map of shared memory lines cached in a given set of one of the system caches and has an ISDS entry to be used to store status information for the evicted ISDC entry; and designating the evicted ISDC entry to the incoming operation request; marking the created ISDC entry as pending, wherein pending indicates that the ISDC entry is waiting to receive a data reply from the ISDS; and storing the incoming operation request into the ISDC pending request queue.