1STALLD(8) System Manager's Manual STALLD(8)
2
3
4
6 stalld - detect starving threads and boost them
7
9 stalld [ -l ] [ -v ] [ -k ] [ -s ] [ -f ] [ -h ] [ -c cpu-list] [ -p
10 time-in-ns ] [ -r time-in-ns ] [ -d time-in-sec ] [ -t time-in-sec ]
11
12
14 stalld is a system daemon that monitors thread for the starvation con‐
15 dition. Starvation occurs when a thread sits on a cpu run-queue for
16 longer than the starvation-threshold, meaning the thread has not been
17 allowed to run for threshold seconds. The thread is boosted using the
18 SCHED_DEADLINE policy and given a time period to run. Once it uses this
19 boost period, the thread is returned to its original scheduling policy.
20
21
23 -t|--starving_threshold
24 how long (in seconds) a thread must starve before being boosted
25 [60 s]
26
27 -p|--boost_period
28 SCHED_DEADLINE period in nanoseconds for a starving thread
29 [1000000000 ns]
30
31 -r|--boost_runtime
32 SCHED_DEADLINE runtime in nanoseconds for a starving thread
33 [20000 ns]
34
35 -d|--boost_duration
36 duration in seconds the starving thread will run [ 3 s]
37
38 -F|--force_fifo
39 force using SCHED_FIFO for boosting
40
41 -l|--log_only
42 only log information, do no boosting [false]
43
44 -v|--verbose
45 print action informtion to stdout [false]
46
47 -k|--log_kmsg
48 log information to the kernel buffer [false]
49
50 -s|--log_syslog
51 print information to syslog [true]
52
53 -f|--foreground
54 run in the foreground [false (true with -v)]
55
56 -P|--pidfile
57 write dameon pid to specified file [none]
58
59 -A|--aggressive_mode
60 dispatch one thread per cpu run-queue, even if thre are no
61 starving threads (uses more power). [false]
62
63 -O|--power_mode
64 run as a single threaded program, it consumes less CPU, at the
65 price of less precision/granularity. [false]
66
67 -g|--granularity
68 set the granularity (in seconds) at which stalld checks for
69 starving threads. The lower the value the more precise will be
70 the detection, at the price of consuming more CPU time. [5 sec‐
71 onds]
72
73 -h|--help
74 print options
75
77 /etc/systemd/stalld.conf
78 parameter file for systemd startup
79 /usr/lib/systemd/system/stalld.service
80 systemd unit file
81 /usr/bin/stalld stalld executable
83 none
85 Daniel Bristot de Oliveira (bristot@redhat.com) Juri Lelli
86 (juri.lelli@redhat.com)
87
88
89
90 STALLD(8)