Open MPI logo

Hardware Locality Users' Mailing List Archives

  |   Home   |   Support   |   FAQ   |  

This web mail archive is frozen.

This page is part of a frozen web archive of this mailing list.

You can still navigate around this archive, but know that no new mails have been added to it since July of 2016.

Click here to be taken to the new web archives of this list; it includes all the mails that are in this frozen archive plus all new mails that have been sent to the list since it was migrated to the new archives.

Subject: Re: [hwloc-users] [EXTERNAL] Re: hwloc_get_latency() failures and confusion
From: Brice Goglin (Brice.Goglin_at_[hidden])
Date: 2012-08-06 18:46:46

Le 07/08/2012 00:36, Wheeler, Kyle Bruce a écrit :
> Ahhhh, that's key! The documentation currently says "Look at ancestor
> objects from the bottom to the top until one of them contains a
> distance matrix that matches the objects exactly", which suggests to
> me that it will traverse the object hierarchy looking for the
> NUMANodes *for* me.

Ahh, this one is exactly what's really confusing. There are two things here:
1) the object that contains the distance matrix
2) the object that are covered by the matrix

When the matrix covers the entire machine (usual case), (1) is the root
object and (2) are NUMA nodes.
If you ever have a distance matrix between all cores of the first socket
(and not any other core in the machine), the first socket object would
contain a matrix with distance->relative_depth = depth(socket)-depth(core)

So when you're looking for Core latencies, you check whether the
ancestor immediately above Core contain a matrix for Core distances,
then its parent, ... up to the root object. So it's about (1) moving up
but (2) remains the same type (but (2) gets wider when (1) goes up).