1topline(1)                  General Commands Manual                 topline(1)
2
3
4

NAME

6       topline - a disk/per-core CPU grapher/logger
7

SYNOPSIS

9       topline [ -l ] [ -i 1.0 ] [ -o logfile ] [ program arg1 arg2 ...  ]
10

DESCRIPTION

12       While  programs  like htop can show per-core loads, they do so interac‐
13       tively.  There are loggers like dstat but,  using  numeric  data,  they
14       have no chance to fit per-CPU information within a line on modern many-
15       core processors.  Thus, topline uses Unicode graphing symbols to squash
16       the  data  into  a terse, two-hyperthreads-per-char, form.  This allows
17       eyeballing NUMA separation, CPU hopping, etc.
18
19       Once per second, topline plots stats for that interval:
20
21       per every disk,
22              one character with two columns of dots gives  that  disk's  uti‐
23              lization  time  percentage.   The  left  column shows reads, the
24              right one shows writes.  Disks are  grouped  into  parenthesised
25              groups by interface type (NVMe, SATA, eMMC, ...).
26
27       per every non-hyperthreaded CPU or a pair of hyperthreaded siblings,
28              a  character  with one or two columns is given.  Non-HT CPUS are
29              drawn with bars, HT ones with dots,  offline  cores  are  marked
30              with 'o'.  The parentheses group CPUs by their NUMA node.
31

OPTIONS

33       <program> <arg1> <arg2> ...
34              Runs  a program and terminates the graph once the program exits.
35              The graph still exhibits the global state of the  system  rather
36              than just the program you chose and its children.
37
38       If  no  program  is given, topline will keep logging forever (ie, until
39       you press ^C or similar).
40
41       -l, --line-output, --linearize
42              Marshalls the program's output  line-by-line,  avoiding  mix-ups
43              with  topline's  data.   They  will  be interspersed in separate
44              lines.
45              The program will know it is being  piped;  if  you  want  it  to
46              believe  it's ran on a terminal (to get colors, etc) you may use
47              a tool like pipetty.
48
49       -i <interval>
50              Sets the interval between  data  samples;  the  default  is  1s.
51              Floating-point values are allowed; the number may be suffixed by
52              a "s"  (seconds,  default),  "m"  (minutes),  "h"  (hours),  "d"
53              (days), "ms" (milliseconds), "us" or "µs" (microseconds).
54
55       -o <file>, --output <file>
56              Redirects topline's output to the given file.  The program being
57              ran can then use stdout and stderr unimpeded.
58

CAVEATS

60       If the machine's CPUs are hyperthreaded with more than one or  two  per
61       core,  the graph won't make it obvious which columns share a core.  All
62       siblings are still given consecutively,  unless  forced  into  separate
63       NUMA nodes with fakenuma settings.
64
65       Machines above 140-150 CPUs may not fit on an 80-column terminal.
66

SEE ALSO

68       htop, dstat, VTUNE.
69
70
71
72                                  2019-12-29                        topline(1)
Impressum