Patent ID: 9411733
Filing Date: 2016-08-09
CPC Classification: G06F

Claim Text:
1. A method for comparing and merging a new sharing pattern with existing patterns when a directory is filled comprising: providing a cache coherent shared memory computer, a memory comprising a plurality of data blocks, a sharing pattern table comprising a plurality of bit vectors, each bit vector representing a unique processor sharing pattern of a set of processors of said plurality of processors that shares at least one or more common data blocks of said memory during an execution of an application, a cache having a plurality of cache lines, each cache line comprising an address tag associated with a data block, and a bit pointer to index said cache line into said sharing pattern table to retrieve a corresponding bit vector of a unique processor sharing pattern corresponding to said cache line and to thereby decouple said unique processor sharing patterns from said cache lines, and wherein said cache lines having a same processor sharing pattern point to a common bit vector in said sharing pattern table; searching existing patterns to compare against the new sharing pattern for a matching pattern by use of a hashing function; providing a specific cache line with a pointer to an entry where there is a matching sharing pattern, or where there is no matching sharing pattern found: entering the new sharing pattern into an unused table entry, or where there is no unused entry found: comparing the new pattern with existing patterns to determine a cost of introducing false sharers by use of a cost function; and determining which entry in a sharing pattern table to merge with the new pattern based on the cost function.