摘要 |
<p>A computer system includes a directory at each node which stores coherency information for the coherency units for which that node is the home node. In addition, the directory stores a data access state corresponding to each coherency unit which indicates the data access pattern observed for that coherency unit. The data access state may indicate migratory or non-migratory data access patterns. If the coherency unit has been observed to have a migratory data access pattern, then read/write access rights are granted. Conversely, if the coherency unit has been observed to have non-migratory data access patterns, then read access rights are granted. The home node further detects the migratory and non-migratory data access patterns and selects transitions between the migratory and non-migratory data access states independent of the cache hierarchies within the nodes which access the affected coherency unit. In one embodiment, a pair of counters are employed for each coherency unit. One of the counters is incremented when the coherency unit is in the migratory data access state and a data migration is detected. The other counter is incremented when the coherency unit is in the non-migratory data access state and a data migration is detected. When one of the counters overflows, the home node transitions the data access state of the coherency unit to the alternate data access state. <IMAGE></p> |