Hardware Locality (hwloc): Interoperability with glibc sched affinity

Hardware Locality (hwloc) 2.9.3

Functions
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.