Granularity is the most interesting one, when the cache is partitioned on the fly, who gets to chose what core gets what? That is more of a software problem, but how many pieces can they carve the cache into? On Yonah, it can be sliced up into cacheline level granularity, about the best you can hope for.
How about access? If both cores need the same data, say a piece of code running a thread on each core, who gets rights to it? Is it multi-ported so it can be hit by both sides at once? In Yonah, the answer is no, the lines are accessed serially. Not optimal, but given the granularity, it probably won't be a problem very often.
Yonah's L2 cache - granularity and porting
Posted on Thursday, August 25 2005 @ 9:47 CEST by Thomas De Maesschalck