Hi
Could anybody explain me how to check how many L1/L2 cache my cpu
have.
I'm using CentOS 5.6
cat /proc/cpuinfo |grep CPU
model name : Intel(R) Core(TM)2
Duo CPU T9300 @ 2.50GHz
model name : Intel(R) Core(TM)2
Duo CPU T9300 @ 2.50GHz
Diagram of a
generic dual-core processor, with CPU-local level 1 caches, and
a
shared, on-die level 2 cache.
http://upload.wikimedia.org/wikipedia/commons/e/ec/Dual_Core_Generic.svg
#########################
>From /proc/cpuinfo we see that CPU have 6MB L2 cache, but we
see it doubled and it's not true because according Intel
specification we know that this CPU have shared L2 cache.
grep 'cache size' /proc/cpuinfo
cache size : 6144 KB
cache size : 6144 KB
###################################
Here we can see that cpu have 6MiB
L2 cache and 64KiB L1 cache
dmesg |grep 'CPU: L'
CPU: L1 I cache: 32K, L1 D cache:
32K
CPU: L2 cache: 6144K
L2 - true
L1 - not true because each CPU core
have 64 KiB memory cache (Instruction and Data)
############################################
Into sys directory we can find some
information about cache size but again not all information are
true
L2 - not true
L1 - true
cat
/sys/devices/system/cpu/cpu*/cache/index*/size
32K
32K
6144K
32K
32K
6144K
#####################################
getconf show information only for
one core.
getconf -a |grep CACHE
LEVEL1_ICACHE_SIZE 32768
LEVEL1_DCACHE_SIZE 32768
LEVEL2_CACHE_SIZE 6291456
L1 - 64KiB - not true
L2 - 6MiB - true
############################
According the most powerful tool -
x86info we can presume that we have:
x86info -c
Found 2 identical CPUs
Extended Family: 0 Extended Model:
1
Family: 6 Model: 23 Stepping: 6
Type: 0 (Original OEM)
CPU Model (x86info's best guess):
Core
2 Duo P8600
Processor name string (BIOS
programmed): Intel(R) Core(TM)2 Duo CPU T9300 @ 2.50GHz
Cache info
L1 Instruction cache: 32KB, 8-way
associative. 64 byte line size.
L1 Data cache: 32KB, 8-way
associative. 64 byte line size.
L2 cache: 6MB, 24-way set
associative,
64-byte line size.
TLB info
Instruction TLB: 4x 4MB page
entries,
or 8x 2MB pages entries, 4-way associative
Instruction TLB: 4K pages, 4-way
associative, 128 entries.
Data TLB: 4MB pages, 4-way
associative, 32 entries
L1 Data TLB: 4KB pages, 4-way set
associative, 16 entries
L1 Data TLB: 4MB pages, 4-way set
associative, 16 entries
Data TLB: 4K pages, 4-way
associative,
256 entries.
64 byte prefetching.
Total processor threads: 2
This system has 1 dual-core
processor
running at an estimated 2.50GHz
L1 - 128Kib - true
L2 - 12 MiB - not true
##########################
Output form dmidecode is useless.
dmidecode -t processor
L1 Cache Handle: 0x0005
L2 Cache Handle: 0x0006
L3 Cache Handle: Not Provided
##################################
Is there any tool which can clearly indicate how many L1/L2 cache
cpu have.
If someone have any idea how to clearly designate L1/L2 cache
don't hesitate share your knowledge .. ;)
P.S.
Sorry for my English ...
Regards
_______________________________________________
CentOS mailing list
CentOS@xxxxxxxxxx
http://lists.centos.org/mailman/listinfo/centos