OS Manuals

/usr/bin/hwloc-bind

Portable abstraction of hierarchical hardware architectures with CUDA support

From hwloc-cuda-12.6 2.15.0-r1 (enterprise-packages), captured 2026-11-08 by running hwloc-bind --help (exit 0). permalink

hwloc/linux: failed to find sysfs cpu topology directory, aborting linux discovery.
Usage: hwloc-bind [topology options] [options] <location> -- command ...
 <location> may be a space-separated list of cpusets or objects
            as supported by the hwloc-calc utility, e.g:
    core:2-3        for the third and fourth cores
    node:1.pu:2       the third PU of the second NUMA node
    0x12345678        a CPU set given a bitmask string
    os=eth0           the operating system device named eth0
    pci=0000:01:02.0  the PCI device with the given bus ID
  with prefix ~ to remove, ^ for xor and x for intersection
  (see Location Specification in hwloc(7) for details).
Input topology options (must be at the beginning):
  --no-smt       Only keep a single PU per core
  --restrict [nodeset=]<bitmap>
                 Restrict the topology to some processors or NUMA nodes.
  --restrict-flags <n>  Set the flags to be used during restrict
  --disallowed   Include objects disallowed by administrative limitations
  --hbm          Only consider high bandwidth memory nodes
  --no-hbm       Ignore high-bandwidth memory nodes
Options:
  --cpubind      Use following arguments for cpu binding (default)
  --membind      Use following arguments for memory binding
  --mempolicy <default|firsttouch|bind|interleave|weighted|nexttouch>
                 Change policy that --membind applies (default is bind)
  --best-memattr <attr>
                 Select the best target node in the given memory binding
  --default-nodes
                 Keep default memory nodes only
  -l --logical   Take logical object indexes (default)
  -p --physical  Take physical object indexes
  --single       Bind on a single CPU to prevent migration
  --strict       Require strict binding
  --get          Retrieve current process binding
  -e --get-last-cpu-location
                 Retrieve the last processors where the current process ran
  --nodeset      Display (and parse) cpusets as nodesets
  --pid <pid>    Operate on process <pid>
  --tid <tid>    Operate on thread <tid>
  --cpuset-output-format <hwloc|list|taskset>
  --cof <hwloc|list|taskset>
                 Change the format of cpuset outputs
Miscellaneous options:
  -f --force     Launch the command even if binding failed
  -q --quiet     Hide non-fatal error messages
  -v --verbose   Show verbose messages
  --version      Report version and exit
  -h --help      Show this usage
Options (27)
OptionDescriptionSource
--no-smt NOnly keep the first PU per core before binding.help + man
--restrict nodeset=]<bitmapRestrict the topology to some processors or NUMA nodes.help + man
--restrict-flags nEnforce flags when restricting the topology.help + man
--disallowedInclude objects disallowed by administrative limitations.help + man
--hbmOnly take high bandwidth memory nodes (marked with "HBM" subtype, or "MCDRAM" on Intel Xeon Phi) in account when looking for NUMA nodes in the input locations.help + man
--no-hbmIgnore high bandwidth memory nodes (marked with "HBM" subtype, or "MCDRAM" on Intel Xeon Phi MCDRAM) when looking for NUMA nodes in the input locations.help + man
--cpubindUse following arguments for CPU binding (default).help + man
--membindUse following arguments for memory binding.help + man
--mempolicy policyChange policy that --membind applies (default is bind)help + man
--best-memattr attrSelect the best NUMA node(s) among the given memory binding set by looking at the memory attribute given by <name> (or as an index).help + man
--default-nodesKeep default memory nodes onlyhelp
-l --logicalInterpret input locations with logical indexes instead of physical/OS indexes (default).help + man
-p --physicalInterpret input locations with OS/physical indexes instead of logical indexes.help + man
--singleBind on a single CPU to prevent migration.help + man
--strictRequire strict binding.help + man
--getRetrieve current process bindinghelp + man
-e --get-last-cpu-locationRetrieve the last processors where the current process ranhelp + man
--nodesetReport binding as a NUMA memory node set instead of a CPU set if --get was given.help + man
--pid pidOperate on process <pid>help + man
--tid tidOperate on thread <tid> instead of on an entire process.help + man
--cpuset-output-format hwloc|list|tasksetChange the format of CPUset or nodeset strings displayed by --get, -e, etc.help + man
--cof hwloc|list|tasksetChange the format of cpuset outputshelp
-f --forceLaunch the executable even if binding failed.help + man
-q --quietHide non-fatal error messages.help + man
-v --verboseShow verbose messageshelp + man
--versionReport version and exit.help + man
-h --helpDisplay help message and exit.help + man
Examples (5) from the manual page, untested

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.