wor*_*tor 2 linux cpu cpu-cache
文件夹中的文件是什么意思/sys/devices/system/cpu/cpu0/cache/index0?我在文件夹中看到这些文件:
coherency_line_size number_of_sets shared_cpu_list size ways_of_associativity
level physical_line_partition shared_cpu_map type
Run Code Online (Sandbox Code Playgroud)
在/sys/devices/system/cpu/cpu0/cache/index3有这些文件:
cache_disable_0 level shared_cpu_list subcaches
cache_disable_1 number_of_sets shared_cpu_map type
coherency_line_size physical_line_partition size ways_of_associativity
Run Code Online (Sandbox Code Playgroud)
为什么我在 index1 或 index2 中看不到子缓存?并且 shared_cpu_list 显示 0_7。是不是说这个缓存是和cpu0到cpu7共享的?
小智 5
index0、index1等中数字的含义不一定对应级别;他们只是编号。如果你想知道它是什么级别的缓存,查看级别文件。1 表示 L1,2 表示 L2,3 表示 L3。他们倾向于从最低级别到最高级别编号,但我不知道是否有任何要求。
要知道 L2 是否共享,首先要确定哪个缓存是 L2。然后查看该缓存的 shared_cpu_list。它将是共享的开始编号-结束编号。(我不知道不共享时的样子,因为我的计算机只有共享缓存,但我猜只是一个数字或“0-0”之类的东西。)例如,在我的四边形上-core,超线程 Sandy Bridge,如果我看 L2 的 shared_cpu_list,我看到“2-3”,它告诉我它是与 cpu2 共享的(由于超线程,它实际上是同一个物理 CPU,所以它不是真正的共享缓存)。
对于我的 L3 缓存,其中所有缓存只有一个,我看到“0-7”,所以我认为这意味着它为所有 CPU 的 0 到 7 共享。不过,我从未在其中一个文件中看到下划线.
其他几个意思: