oomstaller(1) | oomstaller man page | oomstaller(1) |
NAME¶
oomstaller - suppress swap thrashing at build time
SYNOPSIS¶
oomstaller [<options>] command [arg] ...
DESCRIPTION¶
This tool monitors the memory usage of each process when performing a build, and suspends processes as necessary to prevent swap thrashing from occuring.
- To perform a build using this tool, specify make or ninja as the argument of this tool and execute as follows.
-
$ oomstaller make -j `nproc`
OPTIONS¶
- --thres <percentage, default=75>
- This tool suspends processes so that memory usage by running build processes does not exceed the specified percentage of available memory.
- --max-parallel <number of processes, default=0>
- Suspends processes so that the number of running build processes does not exceed the specified number. 0 means no limit. A process is counted as one process even if it has multiple threads.
- --max-parallel-thrash <number of processes, default=1>
- Specifies the maximum number of processes to run when thrashing is detected. 0 means no limit.
- --period <seconds, default=1>
- Specifies the interval at which memory usage of each process is checked and processes are controlled.
- --thrash <minimum available memory (MB), default=256>
- If the amount of available memory falls below the specified value, it is assumed that swap thrashing is occurring.
- --show-stat
- Displays statistics when finished.
TIPS¶
If you kill this tool with SIGKILL, a large number of build processes will remain suspended with SIGSTOP. To prevent this from happening, use SIGTERM or SIGINT to kill this tool.
- You can send SIGCONT to all processes run by you with the following command.
-
$ killall -v -s CONT -u $USER -r '.*'
SEE ALSO¶
AUTHOR¶
Naoki Shibata (shibatch@users.sourceforge.net)
01 Dec 2024 | 0.3.0 |