CPU, RAM memory, and load monitor for use with tmux
A simple, lightweight program provided for system monitoring in the status line of tmux.
The memory monitor displays the used and available memory.
The CPU usage monitor outputs a percent CPU usage over all processors. It also displays a textual bar graph of the current percent usage.
The system load average is also displayed.
Example output:
2885/7987MB [||||| ] 51.2% 2.11 2.35 2.44 ^ ^ ^ ^ ^ ^ ^ | | | | | | | 1 2 3 4 5 6 7
- Currently used memory.
- Available memory.
- CPU usage bar graph.
- CPU usage percentage.
- Load average for the past minute.
- Load average for the past 5 minutes.
- Load average for the past 15 minutes.
For terminals with 256 color support, graded colors can be displayed by passing the --colors flag.
Currently, Linux, Mac OSX, FreeBSD, OpenBSD, and NetBSD are supported.
- >= CMake -2.6
- C++ compiler with C++11 support (e.g. gcc/g++ >= 4.6)
There are links to the source code at the project homepage.
cd <source dir> cmake . make
su - make install logout
Configuring tmux
Edit $HOME/.tmux.conf
to display the program's output in status-left or
status-right. For example:
set -g status-interval 2 set -g status-left "#S #[fg=green,bg=black]#(tmux-mem-cpu-load --colors --interval 2)#[default]" set -g status-left-length 60
Note that the interval argument to tmux-mem-cpu-load should be the same number of seconds that status-interval is set at.
Another optional argument is the number of bars in the bar graph, which defaults to 10. This can, for instance, be set to the number of cores in a multi-core system.
The colors option will add graded colors for each of the measures.
The full usage:
Usage: tmux-mem-cpu-load [OPTIONS] Available options: -h, --help Prints this help message --colors Use tmux colors in output -i <value>, --interval <value> Set tmux status refresh interval in seconds. Default: 1 second -g <value>, --graph-lines <value> Set how many lines should be drawn in a graph. Default: 10
Matt McCormick (thewtex) <matt@mmmccormick.com>
Contributions from:
- Jasper Lievisse Adriaanse <jasper@humppa.nl>
- Justin Crawford <justinc@pci-online.net>
- krieiter <krieiter@gmail.com>
- Mark Palmeri <mlp6@duke.edu>
- Pawel 'l0ner' Soltys <pwslts@gmail.com>