stalld - Man Page

detect starving threads and boost them

Synopsis

stalld [ -l ] [ -v ] [ -k ] [ -s ] [ -f ] [ -h ] [ -c cpu-list] [ -p time-in-ns ] [ -r time-in-ns ] [ -d time-in-sec ] [ -t time-in-sec ]

Description

stalld is a system daemon that monitors thread for the starvation condition. Starvation occurs when a thread sits on a cpu run-queue for longer than the starvation-threshold, meaning the thread has not been allowed to run for threshold seconds. The thread is boosted using the SCHED_DEADLINE policy and given a time period to run. Once it uses this boost period, the thread is returned to its original scheduling policy.

Options

-t|--starving_threshold

how long (in seconds) a thread must starve before being boosted [60 s]

-p|--boost_period

SCHED_DEADLINE period in nanoseconds for a starving thread [1000000000 ns]

-r|--boost_runtime

SCHED_DEADLINE runtime in nanoseconds for a starving thread [20000 ns]

-d|--boost_duration

duration in seconds the starving thread will run [ 3 s]

-F|--force_fifo

force using SCHED_FIFO for boosting

-l|--log_only

only log information, do no boosting [false]

-v|--verbose

print action informtion to stdout [false]

-k|--log_kmsg

log information to the kernel buffer [false]

-s|--log_syslog

print information to syslog [true]

-f|--foreground

run in the foreground [false (true with -v)]

-P|--pidfile

write dameon pid to specified file [none]

-A|--aggressive_mode

dispatch one thread per cpu run-queue, even if thre are no starving threads (uses more power). [false]

-h|--help

print options

Files

/etc/systemd/stalld.conf

parameter file for systemd startup

/usr/lib/systemd/system/stalld.service

systemd unit file

/usr/bin/stalld

stalld executable

Bugs

none

Author

Daniel Bristot de Oliveira (bristot@redhat.com) Juri Lelli (juri.lelli@redhat.com)