Open MPI logo

Hardware Locality Users' Mailing List Archives

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

Subject: Re: [hwloc-users] Thread core affinity
From: Gabriele Fatigati (g.fatigati_at_[hidden])
Date: 2011-08-04 10:55:14

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.thibault_at_[hidden]>

> 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-users_at_[hidden]

Ing. Gabriele Fatigati
HPC specialist
SuperComputing Applications and Innovation Department
Via Magnanelli 6/3, Casalecchio di Reno (BO) Italy                    Tel:   +39 051 6171722
g.fatigati [AT]