Intel® Moderncode for Parallel Architectures
Support for developing parallel programming applications on Intel® Architecture.

"History" question: Intel caches and inclusion

mark-brehob
Beginner
285 Views
Hello,
Sorry if this is the wrong forum, but it seemed the closest I could find...

Does anyone know the history of cache inclusion on Intel processors? Last I'd paid attention, Intel had no plans for having strict inclusion of the cache hierarchy? I know that in the late 90s Intel used what they called convenient inclusion, that is the last level of cache was neither fully exclusive nor inclusive. Looking around, it appears as if the modern processors from Intel have the L3 be inclusive of the lower-level caches.

#1 Does anyone know of documentation that definitively states that?

#2 Does anyone know when this change first came about?

I realized in a meeting today I said something based on old information and Im hoping to clear it up with some definitive references.

Thanks!


0 Kudos
3 Replies
mark-brehob
Beginner
285 Views
http://software.intel.com/en-us/articles/who-moved-the-goal-posts-the-rapidly-changing-world-of-cpus/ states that the core i7 is inclusive. Can't figure out anything about the i5 and previous.
0 Kudos
heinerj
Beginner
285 Views
Intel's document: Intel 64 and IA-32 Architectures Software Developer's Manual Volume 3A: System Programming Guide, provides a listing of all caches for the different processor models. See chapter 11.
0 Kudos
TimP
Honored Contributor III
285 Views
I5 and I3 came after Core I7. In the absence of separate documentation, you might assume the cache hierarchy is consistent with Core I7. When you say "strictly inclusive," I might interpret that as L2 being inclusive of L1, which it's not on these models, as well as L3 being inclusive of L1 or L2.
0 Kudos
Reply