1TUNA(8)                 System Administration Utilities                TUNA(8)
2
3
4

NAME

6       tuna - program for tuning running processes
7

SYNOPSIS

9       tuna [OPTIONS]
10

DESCRIPTION

12       This  manual page explains the tuna program. The program can be used to
13       change the attributes of application and kernel threads. tuna can oper‐
14       ate  on  IRQs  by name or number, and tasks or threads by process ID or
15       command-line. CPUs and sets of CPUs can be specified by CPU  or  socket
16       number. IRQ names and process command-lines can include wildcards.
17
18       tuna  can  change  scheduling  policy, scheduler priority and processor
19       affinity for processes and process threads. tuna can  also  change  the
20       processor  affinity  for  interrupts.  When tuna is invoked without any
21       options it starts up in its graphical interface mode. This manual  page
22       explains only the command-line options for tuna
23

OPTIONS

25       tuna  has  both  action  options and modifier options. Modifier options
26       must be specified on the  command-line  before  the  actions  they  are
27       intended to modify. Any modifier option applies to following actions on
28       the same command-line until it is over-ridden.
29
30       Actions
31
32       -h, --help
33              Print a list of options.  tuna  will  exit  after  this  action,
34              ignoring the remainder of the command-line.
35
36       -g, --gui
37              Start the GUI. Actions that follow this on the command-line will
38              be processed without waiting for the GUI to complete.
39
40       -a, --config_file_apply=profilename
41              Apply changes described in profile
42
43       -l, --config_file_list
44              List preloaded profiles
45
46       -i, --isolate
47              Move all threads away from CPU-LIST. Requires -c or -S.
48
49       -I, --include
50              Allow all threads to run on CPU-LIST. Requires -c or -S.
51
52       -m, --move
53              Move selected entities to CPU-LIST. Requires -c and either -t or
54              -q.
55
56       -p, --priority=[POLICY:]RTPRIO
57              Set  thread scheduler tunables: POLICY and RTPRIO. POLICY is one
58              of OTHER, FIFO, RR, or BATCH. Requires -t.
59
60       -P, --show_threads
61              Show thread list.
62
63       -s, --save=FILENAME
64              Save kthreads sched tunables to FILENAME.
65
66       -v, --version
67              Show version
68
69       -W, --what_is
70              Provides help about selected entities. Requires -t.
71
72       -x, --spread
73              Spread selected entities over CPU-LIST. Requires at least one of
74              -t  or  -q.  The specified threads and IRQs are each assigned to
75              one cpu in CPU-LIST.
76
77       Modifiers
78
79       -c, --cpus=CPU-LIST
80              CPU-LIST affected by commands. Requires a CPU number or a comma-
81              separated list of CPU numbers.
82
83       -C, --affect_children
84              Operation will affect children threads.
85
86       -f, --filter
87              Disable display of selected CPUs in --gui. Requires -c
88
89       -G, --cgroup
90              Display  the  processes  with  the  type of cgroups they are in.
91              Requires -P
92
93       -K, --no_kthreads
94              Operations will not affect kernel threads.
95
96       -q, --irqs=IRQ-LIST
97              IRQ-LIST affected by commands.  Requires  an  IRQ  number  or  a
98              comma-separated list of IRQ numbers.
99
100       -S, --sockets=CPU-SOCKET-LIST
101              CPU-SOCKET-LIST  affected  by commands. Requires a socket number
102              or a comma-separated list of socket numbers.
103
104       -t, --threads=THREAD-LIST
105              THREAD-LIST affected by commands. Requires a  thread  number  or
106              thread  name, or a comma-separated list of thread numbers and/or
107              names. Thread names may contain wildcards. Be sure to  quote  or
108              escape any wildcard specifications.
109
110       -U, --no_uthreads
111              Operations will not affect user threads.
112

USAGE EXAMPLES

114       If for instance the Ethernet NICs have multiple queues for both receive
115       and transmit, each with its own IRQ, the Ethernet IRQs can  be  associ‐
116       ated with a CPU socket:
117
118       tuna -S 2 -i -q 'eth*' -x
119
120              Move  everything  off the CPUs in socket 2, then spread the IRQs
121              for the Ethernet devices across those same CPUs.
122
123
124
125tuna                             February 2010                         TUNA(8)
Impressum