Hardware Locality (hwloc): Get Some Topology Information

Hardware Locality (hwloc) 1.2.2

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

Enumerations | Functions
Get Some Topology Information

## Enumerations
enum | hwloc_get_type_depth_e { HWLOC_TYPE_DEPTH_UNKNOWN, HWLOC_TYPE_DEPTH_MULTIPLE }
## Functions
unsigned | hwloc_topology_get_depth (hwloc_topology_t restrict topology)
int | hwloc_get_type_depth (hwloc_topology_t topology, hwloc_obj_type_t type)
hwloc_obj_type_t | hwloc_get_depth_type (hwloc_topology_t topology, unsigned depth)
unsigned | hwloc_get_nbobjs_by_depth (hwloc_topology_t topology, unsigned depth)
static inline int | hwloc_get_nbobjs_by_type (hwloc_topology_t topology, hwloc_obj_type_t type)
int | hwloc_topology_is_thissystem (hwloc_topology_t restrict topology)

## Detailed Description

Be sure to see the figure in Terms and Definitions that shows a complete topology tree, including depths, child/sibling/cousin relationships, and an example of an asymmetric topology where one socket has fewer caches than its peers.

## Enumeration Type Documentation

enum hwloc_get_type_depth_e

Enumerator:

  HWLOC_TYPE_DEPTH_UNKNOWN | No object of given type exists in the topology.
  HWLOC_TYPE_DEPTH_MULTIPLE | Objects of given type exist at different depth in the topology.

## Function Documentation

hwloc_obj_type_t hwloc_get_depth_type | ( | hwloc_topology_t | topology,
|  | unsigned | depth
| ) |  |

Returns the type of objects at depth `depth`.

Returns:
  -1 if depth `depth` does not exist.

unsigned hwloc_get_nbobjs_by_depth | ( | hwloc_topology_t | topology,
|  | unsigned | depth
| ) |  |

Returns the width of level at depth `depth`.

static inline int hwloc_get_nbobjs_by_type | ( | hwloc_topology_t | topology,
|  | hwloc_obj_type_t | type
| ) |  | `[static]`

Returns the width of level type `type`.

If no object for that type exists, 0 is returned. If there are several levels with objects of that type, -1 is returned.

int hwloc_get_type_depth | ( | hwloc_topology_t | topology,
|  | hwloc_obj_type_t | type
| ) |  |

Returns the depth of objects of type `type`.

If no object of this type is present on the underlying architecture, or if the OS doesn't provide this kind of information, the function returns HWLOC_TYPE_DEPTH_UNKNOWN.

If type is absent but a similar type is acceptable, see also hwloc_get_type_or_below_depth() and hwloc_get_type_or_above_depth().

If some objects of the given type exist in different levels, for instance L1 and L2 caches, the function returns HWLOC_TYPE_DEPTH_MULTIPLE.

unsigned hwloc_topology_get_depth | ( | hwloc_topology_t restrict | topology | ) |

Get the depth of the hierarchical tree of objects.

This is the depth of HWLOC_OBJ_PU objects plus one.

int hwloc_topology_is_thissystem | ( | hwloc_topology_t restrict | topology | ) |

Does the topology context come from this system?

Returns:
  1 if this topology context was built using the system running this program.
  0 instead (for instance if using another file-system root, a XML topology file, or a synthetic topology).