HWLOC-DISTRIB(1)

NAME
hwloc-distrib - Build a number of cpu masks distributed on the system

SYNOPSIS
topodistrib [options] <integer>

OPTIONS

-v  Singlify each output to a single CPU.

-v  Verbose messages.

--synthetic "2 2"
    Simulate a fake hierarchy.

--version
    Report version and exit.

DESCRIPTION
hwloc-distrib generates a series of CPU masks in an attempt to distribute a set of processes around multiple processors in a single server. These masks can be used with hwloc-bind(1).

NOTE: It is highly recommended that you read the hwloc(7) overview page before reading this man page. Most of the concepts described in hwloc(7) directly apply to the hwloc-bind utility.

EXAMPLES

hwloc-distrib's operation is best described through several examples.

If 4 processes have to be distributed across a machine, their CPU masks may be obtained with:
    $ hwloc-distrib 4
    0000000f
    00000f00
    000000f0
    0000f000 To get a single processor of each CPU masks (prevent migration in case of binding)
    $ hwloc-distrib 4 --single
    00000001
    00000100
    00000010
    00001000 To convert the output into a list of processors that may be passed to dplace -c inside a mpirun command line:
    $ hwloc-distrib 4 --single | xargs hwloc-calc --pulist
    0,8,4,16

RETURN VALUE
Upon successful execution, hwloc-distrib displays one or more CPU mask strings. The return value is 0.

hwloc-distrib will return nonzero if any kind of error occurs, such as (but not limited to) failure to parse the command line.

SEE ALSO
hwloc(7)