Hey all, Just wondering what you use for hardware monitoring if you have an app that can show various speeds and temperatures etc?
Quick edit: what about stress testing as well?
KDE System Monitor can display and graph whatever data your system’s sensors are producing. I made a couple of custom pages with the things that interest me, like temperatures, CPU core speeds, and fans. It does the job pretty well.
Try btop, like htop but with more info, and a more detailed display.
❤️ btop. Lots of info, it’s pretty, and it can run in headless environments too.
Deeply, deeply vanilla here.
gnome-system-monitor for network, drives, memory and CPU usage. Sensors Monitor applet in Cinnamon (which makes use of the
lm-sensors
console command in the background) and occasionallyxsensors
(likewise) for temperatures and the like.Bottom right of my second monitor, on a Cinnamon panel, I have the aforementioned applet set to show
G: xx C: yy
where xx and yy are the current max temperatures of the GPU and CPU respectively. Tooltip hover on that is set to show drive temperatures, but I rarely look at those because they rarely ever seem to get above 40C.I’ve also used the bash-sensors applet in the past to do similar things.
xsensors
/lm-sensors
needed a kernel module loaded to access extra temperature stats beyond the basics, but most of those turned out to be useless, wrong or not worth worrying about.As for stress testing, I have a shell script that spins up several do-nothing, busywork scripts and will push the CPU to 100%, 80C and the fans to high RPM in barely any time at all. I don’t feel the need to do that very often.
For the GPU, I can just remove any FPS limit from whatever relatively recent game I’m playing. Heck, even Minecraft.
I’ve considered installing one of the applications that adjusts CPU fan RPM curves, but I set a profile I liked in the UEFI over a year ago and that’s been working fine for me. If I’ve ever hit a point where the CPU has had to rate-limit, I haven’t really noticed the drop in performance.
KDE Plasma’s default monitor is quite good, but you’ll need to edit the page to reveal all the hidden trackers that aren’t shown by default. Great if you already use Plasma.
I also tend to use CoreCtrl and Steam’s inbuilt monitor (which I think is based off Mangohud?). CoreCtrl has a nice UI (much better than LACT, IMO), but it’s no longer receiving active development, so it doesn’t support the current generation of GPU’s. Meanwhile, Steam’s monitor is convenient but, well, it only works on Steam
I’ve been using coolercontrol, it lets me set custom fan curves!
If you are used to the Windows task manager check out Mission Center on flathub.
I’d also recommend hot keying it to Carl shift wax for that authentic feeling
MangoHud is the obligatory answer.
I do use that when gaming. Awesome software
Psensor with lm-sensors, LACT, CoreCtrl, top.
btop for sure. Shows current processes and their resources usage, us can terminate and kill them from the program kinda like windoes task manager, shows CPU usage/temp, and ram, storage, and network use. Only big thing it doesnt have that I use is GPU monitoring, I use nvtop for that.
For stress testing, mprime is def best for CPU stress test. You may know it as prime95 on windows.
So, it depends on what you’re monitoring. There is no one-size-fits-all tool.
I haven’t needed to monitor remote systems much, especially recently. There’s a whole menagerie of tools for aggregating that kind of stuff.
For the local system, I use a collection of things:
-
In Sway, I use
waybar
, which can display current processor temperature and CPU load. I have it normally invisible so that the applications get the whole screen, but when I have the Super key down, it flashes up at the bottom of the screen. -
top
is installed pretty much everywhere, and will show CPU and memory usage. I’ve played withatop
,htop
, andbtop
, but none have them really stuck. First, they aren’t universally pre-installed on systems, and being everywhere is a nice advantage. Second, they all have some things that I don’t like.htop
defaults to blowing a line of the terminal per core on showing individual load on a core, which is a lot of space for something that probably isn’t of general interest.btop
looks prettiest, but uses a bunch of CPU time and refuses to run in a small terminal, besides wasting some (less) space on a per-core basis. I can’t recall what it was aboutatop
that didn’t do it for me. -
bwm-ng
is the tool I typically use to get an idea of how much data is moving in and out of a system. -
sensors
(in the lm-sensors package) dumps most of the temperature data that your system’s temperature sensors can see. -
mangohud
is useful for showing an overlay in 3D games with a lot of performance data. -
I personally like
sar
(in the sysstat package) to log and show historical data, as it’s been around for a long time. I’ve usedcollectd
because it supports logging data from a temperature probe that I have. -
I think that the new hotness for logging data is maybe
pcp
, Performance Co-Pilot. I’ve been meaning to play with this more. Red Hat seems to very much recommend it. Red Hat has a list of PCP equivalents – for example,pcp atopsar -A
is comparable tosar
. It also appears to support monitoring remote hosts. Just haven’t had the occasion to really dig into it. -
radeontop
for my AMD GPUs. This has been particularly useful recently, as it permits showing how much VRAM is in use — if you’re playing around with AI stuff, it chews up a bunch of memory, and currently, Linux doesn’t have a single all-encompassing system for automatically unloading and reloading stuff (though ollama will, by default, unload on a period of inactivity) so you need to keep an eye on it if you’re simultaneously running games and other things that use VRAM. -
smartctl
in thesmartmontools
package provides a bunch of data about hard drive performance and problems.
-
I use node_exporter on all of my systems. They get scraped by a VictoriaMetrics instance on one of my servers, and then AlertManager is used to push out alerts if any of my configured thresholds are met (high temperature, high memory usage, high swap usage, high disk usage, etc.), and Grafana is used to plot it.
eg: CPU Temperatures, Drive Temperatures, RAM Usage, Disk Usage, and many more. Disk usage on that scale is pretty boring, but there’s a lot to see if you zoom out.
It records thousands of metrics from every system every 15 seconds and holds onto it for 6 months, so it’s easy to spot trends, look at historical changes, the differences caused by hardware changes, etc. I also use smart plugs which get pulled into the same database, so I can look at power consumption on all of the systems.
I’m not sure if it shows GPU temp, but
htop
shows processes, CPU temp, memory, network, disk IO, etc… and it’s what I pretty much always use.I use RadeonTop for monitoring my AMD GPU and s-tui for monitoring the CPU. I also use lm-sensors for monitoring fans, temperatures and voltages.