Open MPI logo

Portable Hardware Locality (hwloc) Documentation: v2.10.0

  |   Home   |   Support   |   FAQ   |  
Interoperability with glibc sched affinity

Functions

static int hwloc_cpuset_to_glibc_sched_affinity (hwloc_topology_t topology, hwloc_const_cpuset_t hwlocset, cpu_set_t *schedset, size_t schedsetsize)
 
static int hwloc_cpuset_from_glibc_sched_affinity (hwloc_topology_t topology, hwloc_cpuset_t hwlocset, const cpu_set_t *schedset, size_t schedsetsize)
 

Detailed Description

This interface offers ways to convert between hwloc cpusets and glibc cpusets such as those manipulated by sched_getaffinity() or pthread_attr_setaffinity_np().

Note
Topology topology must match the current machine.

Function Documentation

◆ hwloc_cpuset_from_glibc_sched_affinity()

static int hwloc_cpuset_from_glibc_sched_affinity ( hwloc_topology_t  topology,
hwloc_cpuset_t  hwlocset,
const cpu_set_t *  schedset,
size_t  schedsetsize 
)
inlinestatic

Convert glibc sched affinity CPU set schedset into hwloc CPU set.

This function may be used before calling sched_setaffinity or any other function that takes a cpu_set_t as input parameter.

schedsetsize should be sizeof(cpu_set_t) unless schedset was dynamically allocated with CPU_ALLOC

Returns
0 on success.
-1 with errno set to ENOMEM if some internal reallocation failed.

◆ hwloc_cpuset_to_glibc_sched_affinity()

static int hwloc_cpuset_to_glibc_sched_affinity ( hwloc_topology_t  topology,
hwloc_const_cpuset_t  hwlocset,
cpu_set_t *  schedset,
size_t  schedsetsize 
)
inlinestatic

Convert hwloc CPU set toposet into glibc sched affinity CPU set schedset.

This function may be used before calling sched_setaffinity or any other function that takes a cpu_set_t as input parameter.

schedsetsize should be sizeof(cpu_set_t) unless schedset was dynamically allocated with CPU_ALLOC

Returns
0.