Open MPI logo

Portable Hardware Locality (hwloc) Documentation: v2.8.0

  |   Home   |   Support   |   FAQ   |  
Windows-specific helpers

Functions

int hwloc_windows_get_nr_processor_groups (hwloc_topology_t topology, unsigned long flags)
 
int hwloc_windows_get_processor_group_cpuset (hwloc_topology_t topology, unsigned pg_index, hwloc_cpuset_t cpuset, unsigned long flags)
 

Detailed Description

These functions query Windows processor groups. These groups partition the operating system into virtual sets of up to 64 neighbor PUs. Threads and processes may only be bound inside a single group. Although Windows processor groups may be exposed in the hwloc hierarchy as hwloc Groups, they are also often merged into existing hwloc objects such as NUMA nodes or Packages. This API provides explicit information about Windows processor groups so that applications know whether binding to a large set of PUs may fail because it spans over multiple Windows processor groups.

Function Documentation

◆ hwloc_windows_get_nr_processor_groups()

int hwloc_windows_get_nr_processor_groups ( hwloc_topology_t  topology,
unsigned long  flags 
)

Get the number of Windows processor groups.

flags must be 0 for now.

Returns
at least 1 on success.
-1 on error, for instance if the topology does not match the current system (e.g. loaded from another machine through XML).

◆ hwloc_windows_get_processor_group_cpuset()

int hwloc_windows_get_processor_group_cpuset ( hwloc_topology_t  topology,
unsigned  pg_index,
hwloc_cpuset_t  cpuset,
unsigned long  flags 
)

Get the CPU-set of a Windows processor group.

Get the set of PU included in the processor group specified by pg_index. pg_index must be between 0 and the value returned by hwloc_windows_get_nr_processor_groups() minus 1.

flags must be 0 for now.

Returns
0 on success.
-1 on error, for instance if pg_index is invalid, or if the topology does not match the current system (e.g. loaded from another machine through XML).