htop/linux
Ran Benita 08feb8585b Add pressure stall information (PSI) meters on Linux
The pressure stall information (PSI) metrics provide useful information
on delays caused by waiting for CPU, IO and memory. Particularly on busy
servers it can provide a quick overview of what's "slowing things down".

This feature is supported on Linux >= 4.20.
The interface is documented here:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/plain/Documentation/accounting/psi.txt
These links provide rationale:
https://lwn.net/Articles/759781/
https://facebookmicrosites.github.io/psi/

The following metrics are added, corresponding to the currently exposed
lines (see `head /proc/pressure/*`):
- PressureStallCPUSome
- PressureStallIOSome
- PressureStallIOFull
- PressureStallMemorySome
- PressureStallMemoryFull

The color scheme is the same as that used for Load Average, however I
gave it separate entries just in case someone wants to change them
specifically.

Tested on 4.20.7-arch1-1-ARCH, on the linux platform.
Also tested that other platforms still compile (changed configure to use
the unsupported platform).

Closes #879.
2019-02-13 22:38:10 +02:00
..
Battery.c linux/Battery.c: make sure fd is always closed 2018-02-18 10:21:22 -03:00
Battery.h Optimize Strings_startWith() 2016-08-11 10:49:35 +08:00
IOPriority.c Set idle I/O prio to 0x6007, like ionice. 2017-07-05 15:20:48 -03:00
IOPriority.h Set idle I/O prio to 0x6007, like ionice. 2017-07-05 15:20:48 -03:00
IOPriorityPanel.c Security review: check results of snprintf. 2017-07-27 16:07:50 -03:00
IOPriorityPanel.h Files moved and added for supporting separate platforms. 2014-11-24 18:55:49 -02:00
LinuxCRT.c Fix spelling of "maintainer" 2016-01-02 12:11:26 -05:00
LinuxCRT.h Move platform-dependent parts of Linux battery meter. 2014-11-27 21:04:57 -02:00
LinuxProcess.c Linux: add process->starttime and use it for STARTTIME column (#700) 2018-08-19 01:29:03 -03:00
LinuxProcess.h Linux: add process->starttime and use it for STARTTIME column (#700) 2018-08-19 01:29:03 -03:00
LinuxProcessList.c Linting changes 2019-02-10 14:16:46 +01:00
LinuxProcessList.h Linux: add process->starttime and use it for STARTTIME column (#700) 2018-08-19 01:29:03 -03:00
Platform.c Add pressure stall information (PSI) meters on Linux 2019-02-13 22:38:10 +02:00
Platform.h Add pressure stall information (PSI) meters on Linux 2019-02-13 22:38:10 +02:00
PressureStallMeter.c Add pressure stall information (PSI) meters on Linux 2019-02-13 22:38:10 +02:00
PressureStallMeter.h Add pressure stall information (PSI) meters on Linux 2019-02-13 22:38:10 +02:00