Open MPI logo

Portable Hardware Locality (hwloc) Documentation: v1.11.13

  |   Home   |   Support   |   FAQ   |  
hwloc_distances_s Struct Reference

#include <hwloc.h>

Data Fields

unsigned relative_depth
unsigned nbobjs
float * latency
float latency_max
float latency_base

Detailed Description

Distances between objects.

One object may contain a distance structure describing distances between all its descendants at a given relative depth. If the containing object is the root object of the topology, then the distances are available for all objects in the machine.

If the latency pointer is not NULL, the pointed array contains memory latencies (non-zero values), see below.

In the future, some other types of distances may be considered. In these cases, latency may be NULL.

Field Documentation

◆ latency

float* hwloc_distances_s::latency

Matrix of latencies between objects, stored as a one-dimension array. May be NULL if the distances considered here are not latencies.

Unless defined by the user, this currently contains latencies between NUMA nodes (as reported in the System Locality Distance Information Table (SLIT) in the ACPI specification), which may or may not be accurate. It corresponds to the latency for accessing the memory of one node from a core in another node.

Values are normalized to get 1.0 as the minimal value in the matrix. Latency from i-th to j-th object is stored in slot i*nbobjs+j.

◆ latency_base

float hwloc_distances_s::latency_base

The multiplier that should be applied to latency matrix to retrieve the original OS-provided latencies. Usually 10 on Linux since ACPI SLIT uses 10 for local latency.

◆ latency_max

float hwloc_distances_s::latency_max

The maximal value in the latency matrix.

◆ nbobjs

unsigned hwloc_distances_s::nbobjs

Number of objects considered in the matrix. It is the number of descendant objects at relative_depth below the containing object. It corresponds to the result of hwloc_get_nbobjs_inside_cpuset_by_depth().

◆ relative_depth

unsigned hwloc_distances_s::relative_depth

Relative depth of the considered objects below the object containing this distance information.

The documentation for this struct was generated from the following file: