choom(1) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | OPTIONS | NOTES | AUTHORS | SEE ALSO | AVAILABILITY | COLOPHON

CHOOM(1)                      User Commands                     CHOOM(1)

NAME         top

       choom - display and adjust OOM-killer score.

SYNOPSIS         top

       choom -p pid

       choom -p pid -n number

       choom -n number [--] command [argument...]

DESCRIPTION         top

       The choom command displays and adjusts Out-Of-Memory killer score
       setting.

OPTIONS         top

       -p, --pid pid
              Specifies process ID.

       -n, --adjust value
              Specify the adjust score value.

       -h, --help
              Display help text and exit.

       -V, --version
              Display version information and exit.

NOTES         top

       Linux kernel uses the badness heuristic to select which process
       gets killed in out of memory conditions.

       The badness heuristic assigns a value to each candidate task
       ranging from 0 (never kill) to 1000 (always kill) to determine
       which process is targeted.  The units are roughly a proportion
       along that range of allowed memory the process may allocate from
       based on an estimation of its current memory and swap use.  For
       example, if a task is using all allowed memory, its badness score
       will be 1000.  If it is using half of its allowed memory, its
       score will be 500.

       There is an additional factor included in the badness score: the
       current memory and swap usage is discounted by 3% for root
       processes.

       The amount of "allowed" memory depends on the context in which
       the oom killer was called.  If it is due to the memory assigned
       to the allocating task's cpuset being exhausted, the allowed
       memory represents the set of mems assigned to that cpuset.  If it
       is due to a mempolicy's node(s) being exhausted, the allowed
       memory represents the set of mempolicy nodes.  If it is due to a
       memory limit (or swap limit) being reached, the allowed memory is
       that configured limit.  Finally, if it is due to the entire
       system being out of memory, the allowed memory represents all
       allocatable resources.

       The adjust score value is added to the badness score before it is
       used to determine which task to kill.  Acceptable values range
       from -1000 to +1000.  This allows userspace to polarize the
       preference for oom killing either by always preferring a certain
       task or completely disabling it.  The lowest possible value,
       -1000, is equivalent to disabling oom killing entirely for that
       task since it will always report a badness score of 0.

       Setting an adjust score value of +500, for example, is roughly
       equivalent to allowing the remainder of tasks sharing the same
       system, cpuset, mempolicy, or memory controller resources to use
       at least 50% more memory.  A value of -500, on the other hand,
       would be roughly equivalent to discounting 50% of the task's
       allowed memory from being considered as scoring against the task.

AUTHORS         top

       Karel Zak <kzak@redhat.com>

SEE ALSO         top

       proc(5)

AVAILABILITY         top

       The choom command is part of the util-linux package and is
       available from Linux Kernel Archive 
       ⟨https://www.kernel.org/pub/linux/utils/util-linux/⟩.

COLOPHON         top

       This page is part of the util-linux (a random collection of Linux
       utilities) project.  Information about the project can be found
       at ⟨https://www.kernel.org/pub/linux/utils/util-linux/⟩.  If you
       have a bug report for this manual page, send it to
       util-linux@vger.kernel.org.  This page was obtained from the
       project's upstream Git repository
       ⟨git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git⟩ on
       2021-03-21.  (At that time, the date of the most recent commit
       that was found in the repository was 2021-03-19.)  If you
       discover any rendering problems in this HTML version of the page,
       or you believe there is a better or more up-to-date source for
       the page, or you have corrections or improvements to the
       information in this COLOPHON (which is not part of the original
       manual page), send a mail to man-pages@man7.org

util-linux                     April 2018                       CHOOM(1)

Pages that refer to this page: proc(5)