A partial directory cache records addresses of blocks which are known to be cached
in a non-exclusive state in any caches currently caching the blocks. If a read
command to a block recorded in the partial directory cache is received, one or
more probes corresponding to the command may be inhibited. Since probes are selectively
inhibited if an affected block is recorded in the partial directory cache, the
size of the partial directory cache may be flexible. If a particular block is not
represented in the partial directory cache, probes are performed when the particular
block is accessed (even if the particular block could have been represented in
the partial directory cache). Thus, coherency is maintained even if every non-exclusively
cached block is not represented in the partial directory cache.