I'm a little confused about coarse vector fallback.. if we allocate less bit for a cache line in limited pointer schema, how can we revert to bit vector?
if we allocate similar number of bits in limited pointer scheme (like the example in previous slide, where we use (100 pointers * 10 bits/pointer) ~ 1024 bit), isn't that lose our goal to reduce number of bits?
@yangwu. The fallback is to fall back to a bitvector scheme, but use each bit to represent the line being resident in a certain group of processor's caches (rather than a single processor's cache). If there are 1000 processors, and each bit represents presence in a group of 10, then the vector only needs to be 100 bits. Of course, not the coherence protocol invalidates at the granularity of 10 processors not one.