Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

CACHESIZE for i7-4770

Don_Ritchie
Beginner
685 Views

I'm running Visual Fortran Composer XE 2011 Update 11 under Windows 7 64-bit on a new machine with the Intel Core i7-4770 which has caches L1=256 kB, L2=1024 kB, L3=8192 kB. The CACHESIZE(n) generic Intrinsic Function, however, returns CACHESIZE(1)->32, CACHESIZE(2)->256, CACHESIZE(3)->8192.

This is not a critical problem for me at this time, but everyone might like to be aware of it.

You may also be interested in knowing about my 7/24/13 post: "crashes of gemm on new Windows machine" in the mkl forum.

 

0 Kudos
3 Replies
Steven_L_Intel1
Employee
685 Views

Interesting  - would you please download, install and run the Intel Processor Identification Utility, Click File > Save, save a report and attach it to a reply here? I'd like to see what that utility reports on your system.

0 Kudos
Don_Ritchie
Beginner
685 Views

Steve:

Attached is the output file from the Processor ID Utility.

Apparently the size reported by CACHESIZE(n) for n=1 or 2 is size per core. So the problem is/was my misunderstanding of the specs for the i7-4770 which give 'total' L1 and L2 caches.

Thanks for clearing that up.

0 Kudos
Steven_L_Intel1
Employee
685 Views

Yes, that seems to be correct. Glad that we got that cleared up. The motivation for the function was to help with algorithms that dynamically adjust the way they traverse arrays based on cache size. It would make sense for this to be per-core. The L3 cache is shared by all cores.

0 Kudos
Reply