numactl

NUMACTL(1)                 BSD General Commands Manual                NUMACTL(1)

NAME
     numactl — manage NUMA policy configuration

SYNOPSIS
     numactl [-l policy] [-m domain] [-c domain] cmd ...
     numactl -g [-p pid] [-t tid]
     numactl -s [-l policy] [-m domain] [-c domain] [-p pid] [-t tid]

DESCRIPTION
     The numactl command can be used to assign NUMA policies to
     processes/threads, run commands with a given NUMA policy, and query
     information about NUMA policies on running processes.

     numactl requires a target to modify or query.  The target may be specified
     as a command, process id or a thread id.  Using --get the target's NUMA
     policy may be queried.  Using --set the target's NUMA policy may be
     queried.  If no target is specified, numactl operates on itself.  Not all
     combinations of operations and targets are supported.  For example, you may
     not set the id of an existing set or query and launch a command at the same
     time.

     Each process and thread has a NUMA policy.  By default the policy is NONE.
     If a thread policy is NONE, then the policy will fall back to the process.
     If the process policy is NONE, then the policy will fall back to the system
     default.  The policy may be queried by using --get.

     The options are as follows:

     --cpudomain domain, -c domain
                         Set the given CPU scheduling policy.  Constrain the
                         object (tid, pid, command) to run on CPUs that belong
                         to the given domain.

     --get, -g           Retrieve the NUMA policy for the given thread or
                         process id.

     --set, -s           Set the NUMA policy for the given thread or process id.

     --memdomain domain, -m domain
                         Constrain the object (tid, pid, command) to the given
                         domain.  This is only valid for fixed-domain and fixed-
                         domain-rr.  It must not be set for other policies.

     --mempolicy policy, -l policy
                         Set the given memory allocation policy.  Valid policies
                         are none, rr, fixed-domain, fixed-domain-rr, first-
                         touch, and first-touch-rr.  A memdomain argument is
                         required for fixed-domain and fixed-domain-rr.

     --pid pid, -p pid   Operate on the given pid.

     --tid tid, -t tid   Operate on the given tid.

EXIT STATUS
     The numactl utility exits 0 on success, and >0 if an error occurs.

EXAMPLES
     Create a /bin/sh process with memory coming from domain 0, but CPUs coming
     from domain 1:
           numactl --mempolicy=fixed-domain --memdomain=0 --cpudomain=1 /bin/sh

     Query the NUMA policy for the ⟨sh pid⟩:
           numactl --get --pid=<sh pid>

     Set the NUMA policy for the given TID to round-robin:
           numactl --set --mempolicy=rr --tid=<tid>

SEE ALSO
     cpuset(2), numa(4)

HISTORY
     The numactl command first appeared in FreeBSD 11.0.

AUTHORS
     Adrian Chadd <adrian@FreeBSD.org>

BSD                                May 9, 2015                               BSD