Open MPI logo

Hardware Locality Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Hardware Locality Development mailing list

Subject: [hwloc-devel] Ordering of cache and cpu objects
From: Pavan Balaji (balaji_at_[hidden])
Date: 2010-09-08 03:41:25


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
         [CACHE] L2 cache size: 4194304
             [CACHE] L1 cache size: 32768
             [CACHE] L1 cache size: 32768

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)


  -- Pavan

Pavan Balaji