hwlocality_helper_distribute - Man Page
Distributing items over a topology
Synopsis
Enumerations
enum hwloc_distrib_flags_e { HWLOC_DISTRIB_FLAG_REVERSE }
Functions
static int hwloc_distrib (hwloc_topology_t topology, hwloc_obj_t *roots, unsigned n_roots, hwloc_cpuset_t *set, unsigned n, int until, unsigned long flags)
Detailed Description
Enumeration Type Documentation
enum hwloc_distrib_flags_e
Flags to be given to hwloc_distrib().
Enumerator
- HWLOC_DISTRIB_FLAG_REVERSE
Distrib in reverse order, starting from the last objects.
Function Documentation
static int hwloc_distrib (hwloc_topology_t topology, hwloc_obj_t * roots, unsigned n_roots, hwloc_cpuset_t * set, unsigned n, int until, unsigned long flags) [inline], [static]
Distribute n
items over the topology under roots
. Array set
will be filled with n
cpusets recursively distributed linearly over the topology under objects roots
, down to depth until
(which can be INT_MAX to distribute down to the finest level).
n_roots
is usually 1 and roots
only contains the topology root object so as to distribute over the entire topology.
This is typically useful when an application wants to distribute n
threads over a machine, giving each of them as much private cache as possible and keeping them locally in number order.
The caller may typically want to also call hwloc_bitmap_singlify() before binding a thread so that it does not move at all.
flags
should be 0 or a OR'ed set of hwloc_distrib_flags_e.
Returns
0 on success, -1 on error.
- Note
This function requires the
roots
objects to have a CPU set.
Author
Generated automatically by Doxygen for Hardware Locality (hwloc) from the source code.
Referenced By
The man pages hwloc_distrib(3), HWLOC_DISTRIB_FLAG_REVERSE(3) and hwloc_distrib_flags_e(3) are aliases of hwlocality_helper_distribute(3).