为什么 /proc/cpuinfo 报告的缓存大小只有实际大小的一半?

为什么 /proc/cpuinfo 报告的缓存大小只有实际大小的一半?

/proc/cpuinfo 显示缓存大小为 4MB,但英特尔网站上的规格显示缓存为 8MB。有什么想法吗?我使用的是 32 位 ubuntu 10.04。

$ cat /proc/cpuinfo | grep -iE "processor|physical id|cache size"
processor   : 0
cache size  : 4096 KB
physical id : 0
processor   : 1
cache size  : 4096 KB
physical id : 0
processor   : 2
cache size  : 4096 KB
physical id : 0
processor   : 3
cache size  : 4096 KB
physical id : 0

http://ark.intel.com/products/29765/Intel-Core2-Quad-Processor-Q6600-%288M-Cache-2_40-GHz-1066-MHz-FSB%29

答案1

Intel Core 2 具有 2 个内核集群。每个内核都有自己的非常快的 1 级缓存 (L1),并且每个集群都具有共享的 L2 缓存。

因此,这 8MB 实际上是由 2 个核心共享的,总共有 16MB,每 2 个核心 8MB,看看这个

http://jerome.berbiqui.org/parallel-many-core-CS/article001.png

来源:http://jerome.berbiqui.org/parallel-many-core-CS/

相关内容