|
From the external observer, the behavior of a CMP system should be looked at as the behavior of a dual package (DP) system. For
that purpose, Intel® Core™ Duo processor implements the same MESI protocol as in all other Pentium® M processors.
In order to improve performance, we optimized the protocol for faster communication between the cores, particularly when the
data exist in the L2 cache. A noticeable example of such a modification was done in order to allow the system to
distinguish between a situation in which data are shared by the two CMP cores, but not with the rest of the world, and a
situation in which the data are shared by one or more caches on the die as well as by an agent on the external bus (can be
another processor). When a core issues an RFO, if the line is shared only by the other cache within the CMP die, we can
resolve the RFO internally very fast, without going to the external bus at all. Only if the line is shared with another
agent on the external bus do we need to issue the RFO externally.
For most Intel Core Duo systems, when only one package exists, this is a very important optimization. In the case of a multi-package
system, the number of coherence messages over the external bus is smaller than in similar DP or MP systems, since
much of the communication is being resolved internally. The number of required coherency messages is also much smaller than
in the case of using a split cache (Figure 3a) which requires all the communication between the cores and split L2 caches
to be done over the external bus.
|