Provided by: libhwloc-doc_2.10.0-1build1_all bug

NAME

       hwlocality_helper_ancestors - Looking at Ancestor and Child Objects

SYNOPSIS

   Functions
       static hwloc_obj_t hwloc_get_ancestor_obj_by_depth (hwloc_topology_t topology, int depth,
           hwloc_obj_t obj)
       static hwloc_obj_t hwloc_get_ancestor_obj_by_type (hwloc_topology_t topology,
           hwloc_obj_type_t type, hwloc_obj_t obj)
       static hwloc_obj_t hwloc_get_common_ancestor_obj (hwloc_topology_t topology, hwloc_obj_t
           obj1, hwloc_obj_t obj2)
       static int hwloc_obj_is_in_subtree (hwloc_topology_t topology, hwloc_obj_t obj,
           hwloc_obj_t subtree_root)
       static hwloc_obj_t hwloc_get_next_child (hwloc_topology_t topology, hwloc_obj_t parent,
           hwloc_obj_t prev)

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 package has fewer caches than its peers.

Function Documentation

   static hwloc_obj_t hwloc_get_ancestor_obj_by_depth (hwloc_topology_t topology, int depth,
       hwloc_obj_t obj) [inline],  [static]
       Returns the ancestor object of obj at depth depth.

       Returns
           the ancestor if any.

           NULL if no such ancestor exists.

       Note
           depth should not be the depth of PU or NUMA objects since they are ancestors of no
           objects (except Misc or I/O). This function rather expects an intermediate level
           depth, such as the depth of Packages, Cores, or Caches.

   static hwloc_obj_t hwloc_get_ancestor_obj_by_type (hwloc_topology_t topology, hwloc_obj_type_t
       type, hwloc_obj_t obj) [inline],  [static]
       Returns the ancestor object of obj with type type.

       Returns
           the ancestor if any.

           NULL if no such ancestor exists.

       Note
           if multiple matching ancestors exist (e.g. multiple levels of HWLOC_OBJ_GROUP) the
           lowest one is returned.

           type should not be HWLOC_OBJ_PU or HWLOC_OBJ_NUMANODE since these objects are
           ancestors of no objects (except Misc or I/O). This function rather expects an
           intermediate object type, such as HWLOC_OBJ_PACKAGE, HWLOC_OBJ_CORE, etc.

   static hwloc_obj_t hwloc_get_common_ancestor_obj (hwloc_topology_t topology, hwloc_obj_t obj1,
       hwloc_obj_t obj2) [inline],  [static]
       Returns the common parent object to objects obj1 and obj2.

       Returns
           the common ancestor.

       Note
           This function cannot return NULL.

   static hwloc_obj_t hwloc_get_next_child (hwloc_topology_t topology, hwloc_obj_t parent,
       hwloc_obj_t prev) [inline],  [static]
       Return the next child. Return the next child among the normal children list, then among
       the memory children list, then among the I/O children list, then among the Misc children
       list.

       Returns
           the first child if prev is NULL.

           the next child if prev is not NULL.

           NULL when there is no next child.

   static int hwloc_obj_is_in_subtree (hwloc_topology_t topology, hwloc_obj_t obj, hwloc_obj_t
       subtree_root) [inline],  [static]
       Returns true if obj is inside the subtree beginning with ancestor object subtree_root.

       Returns
           1 is the object is in the subtree, 0 otherwise.

       Note
           This function cannot work if obj and subtree_root objects do not have CPU sets (I/O or
           Misc objects).

Author

       Generated automatically by Doxygen for Hardware Locality (hwloc) from the source code.