Folks,
I was poking around with the ordering of the objects found by hwloc.
Here's the output I got (custom program: space represents the depth of
the object):
[MACHINE] total memory: 4089507840; local memory: 4089507840
[SOCKET]
[CACHE] L2 cache size: 4194304
[CACHE] L1 cache size: 32768
[CORE]
[CACHE] L1 cache size: 32768
[CORE]
It is clear that the second-level cache is at depth 3, and is contained
within a socket (depth 2). However, the first-level cache is at a lower
depth (depth 4) than the cores themselves (depth 5). Is there a reason
why the ordering of the caches and CPU objects is not consistent, or am
I misreading these results?
Here's the lstopo output for information on my machine:
% ./src/pm/hydra/tools/bind/hwloc/hwloc/utils/lstopo
Machine (3900MB) + Socket #0 + L2 #0 (4096KB)
L1 #0 (32KB) + Core #0 + PU #0 (phys=0)
L1 #1 (32KB) + Core #1 + PU #1 (phys=1)
Thanks,
-- Pavan
--
Pavan Balaji
http://www.mcs.anl.gov/~balaji