Open MPI logo

Portable Hardware Locality (hwloc) Documentation: v1.9

  |   Home   |   Support   |   FAQ   |  
Linux-specific helpers

Functions

int hwloc_linux_parse_cpumap_file (FILE *file, hwloc_cpuset_t set)
 
int hwloc_linux_set_tid_cpubind (hwloc_topology_t topology, pid_t tid, hwloc_const_cpuset_t set)
 
int hwloc_linux_get_tid_cpubind (hwloc_topology_t topology, pid_t tid, hwloc_cpuset_t set)
 
int hwloc_linux_get_tid_last_cpu_location (hwloc_topology_t topology, pid_t tid, hwloc_bitmap_t set)
 

Detailed Description

This includes helpers for manipulating Linux kernel cpumap files, and hwloc equivalents of the Linux sched_setaffinity and sched_getaffinity system calls.

Function Documentation

int hwloc_linux_get_tid_cpubind ( hwloc_topology_t  topology,
pid_t  tid,
hwloc_cpuset_t  set 
)

Get the current binding of thread tid.

The behavior is exactly the same as the Linux sched_getaffinity system call, but uses a hwloc cpuset.

Note
This is equivalent to calling hwloc_get_proc_cpubind() with HWLOC_CPUBIND_THREAD as flags.
int hwloc_linux_get_tid_last_cpu_location ( hwloc_topology_t  topology,
pid_t  tid,
hwloc_bitmap_t  set 
)

Get the last physical CPU where thread tid ran.

Note
This is equivalent to calling hwloc_get_proc_last_cpu_location() with HWLOC_CPUBIND_THREAD as flags.
int hwloc_linux_parse_cpumap_file ( FILE *  file,
hwloc_cpuset_t  set 
)

Convert a linux kernel cpumap file file into hwloc CPU set.

Might be used when reading CPU set from sysfs attributes such as topology and caches for processors, or local_cpus for devices.

int hwloc_linux_set_tid_cpubind ( hwloc_topology_t  topology,
pid_t  tid,
hwloc_const_cpuset_t  set 
)

Bind a thread tid on cpus given in cpuset set.

The behavior is exactly the same as the Linux sched_setaffinity system call, but uses a hwloc cpuset.

Note
This is equivalent to calling hwloc_set_proc_cpubind() with HWLOC_CPUBIND_THREAD as flags.