L#0 and L#1 are physically near because hwloc consider shared caches map when build topology? Because if not, i don't know how hwloc understand the physical proximity of cores :(
2011/8/4 Samuel Thibault <samuel.thiba...@inria.fr> > Gabriele Fatigati, le Thu 04 Aug 2011 16:35:36 +0200, a écrit : > > so physical OS index 0 and 1 are not true are physically near on the die. > > They quite often aren't. See the updated glossary of the documentation: > > "The index that the operating system (OS) uses to identify the object. > This may be completely arbitrary, non-unique, non-contiguous, not > representative of proximity, and may depend on the BIOS configuration." > > > Considering that, how I can use cache locality and cache sharing by cores > if I > > don't know where my threads will physically bound? > > By using logical indexes, not physical indexes. And almost all hwloc > functions use logical indexes, not physical indexes. > > > If L#0 and L#1 where I bind my threads are physically far, may give me > bad > > performance. > > L#0 and L#1 are physically near, that's precisely the whole point of > hwloc: it provides you with *logical* indexes which express proximity, > instead of the P#0 and P#1 physical/OS indexes, which are quite often > simply arbitrary. > > Samuel > _______________________________________________ > hwloc-users mailing list > hwloc-us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-users > -- Ing. Gabriele Fatigati HPC specialist SuperComputing Applications and Innovation Department Via Magnanelli 6/3, Casalecchio di Reno (BO) Italy www.cineca.it Tel: +39 051 6171722 g.fatigati [AT] cineca.it