Article: ISSCC 2006: Intel Tulsa
By: slim (x.delete@this.y.z), February 21, 2006 11:40 am
Room: Moderated Discussions
Michael S (already5chosen@yahoo.com) on 2/21/06 wrote:
---------------------------
>Wouter Tinus (wouter@tweakers.net) on 2/21/06 wrote:
>---------------------------
>>Michael S (already5chosen@yahoo.com) on 2/21/06 wrote:
>>---------------------------
>>>It should be rather complex to build inclusive cache that has to stay in synch
>>>with not one, not two, but SIX inner caches!
>>
It would be complex if you tried to design it to be automatically inclusive of upper caches. Most commonly inclusion is acomplished via the issuanace of a back-invalidate (BI) to the upper caches whenever the L3 evicts a line. This is called forced inclusion and is independent of the number or architecture of the upper caches.
Eviction hints are "nice" but not required. Note that on Xeon the writeback of a cache line does not imply that a copy does not exist in another cache. (Implicit WB excepted).
>>How do you get six? I just count 2x L1 and 2x L2.
>
>+ 2x L1I caches
>
>
>>And is it really that complex compared to other L3 caches?
>
>I am not aware of other inclusive shared L3 caches implemented on ISA that requires
>hardware-enforced consistency between I and D caches.
>
>>I thought Intel used write-through to keep levels of
>>cache synchronized.
>
>Only L1D. L2 is WB. But even with WT things remain rather complex.
>
>>Intuitively keeping track of updates from two cores shouldn't
>>be much harder than with just one core, you just need more bandwidth (but thats inherent to sharing cache).
>>
>
>I have very limited understanding of implementation techniques used for inclusive
>caches. It seems to me that the outer cache would have to keep track for the "inner"
It does but it does not have to worry about which inner cache has the line. It just issues the equivalent of a "BRIL zero lenth" to the upper caches when it needs to BI. The upper caches must then invalidate.
---------------------------
>Wouter Tinus (wouter@tweakers.net) on 2/21/06 wrote:
>---------------------------
>>Michael S (already5chosen@yahoo.com) on 2/21/06 wrote:
>>---------------------------
>>>It should be rather complex to build inclusive cache that has to stay in synch
>>>with not one, not two, but SIX inner caches!
>>
It would be complex if you tried to design it to be automatically inclusive of upper caches. Most commonly inclusion is acomplished via the issuanace of a back-invalidate (BI) to the upper caches whenever the L3 evicts a line. This is called forced inclusion and is independent of the number or architecture of the upper caches.
Eviction hints are "nice" but not required. Note that on Xeon the writeback of a cache line does not imply that a copy does not exist in another cache. (Implicit WB excepted).
>>How do you get six? I just count 2x L1 and 2x L2.
>
>+ 2x L1I caches
>
>
>>And is it really that complex compared to other L3 caches?
>
>I am not aware of other inclusive shared L3 caches implemented on ISA that requires
>hardware-enforced consistency between I and D caches.
>
>>I thought Intel used write-through to keep levels of
>>cache synchronized.
>
>Only L1D. L2 is WB. But even with WT things remain rather complex.
>
>>Intuitively keeping track of updates from two cores shouldn't
>>be much harder than with just one core, you just need more bandwidth (but thats inherent to sharing cache).
>>
>
>I have very limited understanding of implementation techniques used for inclusive
>caches. It seems to me that the outer cache would have to keep track for the "inner"
It does but it does not have to worry about which inner cache has the line. It just issues the equivalent of a "BRIL zero lenth" to the upper caches when it needs to BI. The upper caches must then invalidate.
Topic | Posted By | Date |
---|---|---|
Intel Tulsa Coverage from ISSCC | David Kanter | 2006/02/21 02:45 AM |
Intel Tulsa Coverage from ISSCC | Alberto | 2006/02/21 04:43 AM |
Intel Tulsa Coverage from ISSCC | Paul DeMone | 2006/02/21 06:52 AM |
Inclusive L3? Wow | Michael S | 2006/02/21 04:51 AM |
Inclusive L3? Wow | Wouter Tinus | 2006/02/21 07:06 AM |
Inclusive L3? Wow | Michael S | 2006/02/21 08:20 AM |
Inclusive L3? Wow | slim | 2006/02/21 11:40 AM |
It is? | anonymous | 2006/02/21 09:57 AM |
Inclusive L3? Wow | Linus Torvalds | 2006/02/21 10:10 AM |
Inclusive L3? Wow | Michael S | 2006/02/21 11:03 AM |
Inclusive L3? Wow | Linus Torvalds | 2006/02/21 11:52 AM |
Inclusive L3? Wow | Eric Bron | 2006/02/22 06:39 AM |
Inclusive L3 | David Kanter | 2006/02/22 12:16 PM |
Inclusive L3 | Eric Bron | 2006/02/22 01:00 PM |