As you surmised in your comment the limitation is not with the software but with your battery not reporting correctly.

To clarify these software tools below will only measure power consumption on laptops when running on battery. For desktop or server machines the only current solution is an electronic watt-meter that plugs into the mains socket.

#Power Statistics

In Ubuntu Precise 12.04 there is a new power statistics history window. This can be accessed by clicking the battery item in the application indicator menu then selecting Latop Battery tab.

#Powertop

As mentioned by the OP this program provides information on per process/device power usage.

#Powerstat

Another alternative that measures process/device power usage is powerstat that was written for Ubuntu by Colin King. There is a detailed review of its features on hecticgeek.com.

It can be installed from the PPA: ppa:colin-king/powermanagement

Answer from Cas on askubuntu.com
🌐
Intel Community
community.intel.com › t5 › Software-Tuning-Performance › Is-there-an-energy-profiling-tool-to-monitor-CPU-power › td-p › 1167463
Is there an energy profiling tool to monitor CPU power consumption on Linux? - Intel Community
January 9, 2023 - So, I run the commands indicated in the output of pcm-power command: sudo modprobe msr sudo chmod 777 /etc/sysctl.conf sudo echo 'kernel.nmi_watchdog=0' >> /etc/sysctl.conf · and then, I run again the pcm-power command, but the output of pcm-power is the same.
🌐
GitHub
github.com › sosy-lab › cpu-energy-meter
GitHub - sosy-lab/cpu-energy-meter: A tool for measuring energy consumption of Intel CPUs · GitHub
CPU Energy Meter is a Linux tool that allows to monitor power consumption of Intel CPUs at fine time granularities (few tens of milliseconds).
Starred by 344 users
Forked by 31 users
Languages   C 73.8% | Ruby 18.8% | Makefile 4.7% | Shell 1.2% | Dockerfile 1.1% | Jinja 0.4%
Discussions

Help monitoring CPU/GPU power consumption
Software solutions to "read" power consumption are generally considered inaccurate. It's a guesstimate, not a solid measurement and even the values that can be measured - which depending on hardware isn't a lot - are treated differently by different implementations. Measure power draw externally, any software solution is merely a nice hint, but not reliable. More on reddit.com
🌐 r/linux_gaming
16
18
November 28, 2021
How do you monitor power consumption?
PowerTop can be used to monitor power usage at the process level as described in How to monitor power usage in Linux , but it doesn't monitor total system power consumption (memory, drives, PSU, etc.), at least to my understanding. I use lm-sensors as described in How to install sensors (lm-sensors) on Ubuntu / Debian Linux for monitoring CPU core temperatures along with the Telegraf lm-sensors plugin for writing these to InfluxDB and displaying them in Grafana. Some have suggested this, but I don't see power consumption reported by lm-sensors on my servers, a mix of Supermicro X8 systems and Lenovo Tiny desktops. I have monitored power consumption using two methods: Initially, by running SNMP queries (in a Python script) to an APC AP7801 , networked, metered PDU. I bought this PDU (cheaply on eBay) with the expectation to monitor individual outlets, but I didn't dig deep enough before buying it and learned later that it reports only total power consumption for all outlets. Currently, I use the Telegraf apcupsd plugin on the host (Debian-based NAS) that monitors my APC BackUPS Pro 1500 through USB. This provides all information available in the apcaccess command, and also is written to InfluxDB and displayed in Grafana. Again, both of these methods monitor only total power consumption. There are two options for monitoring power consumption of individual systems: Use a networked, metered PDU that monitors power consumption by outlet rather than a total. These are available, for example the CyberPower PDU81004 Switched Metered-By-Outlet PDU, 100-240V/15A, 8 Outlets, 1U Rackmount , but can get pretty pricey. Use smart plugs that include power monitoring, like these TP-Link Kasa Matter Smart Plug w/ Energy Monitoring . More on reddit.com
🌐 r/homelab
20
11
August 14, 2023
c - How to get CPU cores' energy consumption in Linux kernel? - Stack Overflow
So what I want is monitoring CPU's ... kernel's CPUFreq driver each time I do DVFS. ... I do know the powecap outputs data via sysfs to userspace, so I think it should be possible to directly get it in kernel-level. ... There's 2 cases - averaged power consumption of a longer period of time (that can't be used for high frequency measurements), and ... More on stackoverflow.com
🌐 stackoverflow.com
Linux power draw ON DESKTOP
My desktop + monitor is on ups, so I can see my power consumption on my UPS screen. This is my system: https://docs.google.com/document/d/1yYK4Rx4Mu-XeaO9YiiDxI79BS17ge_5pYAdPank6K84/edit?usp=sharing Windows 10 (idle - browser open on reddit) ~ 105W Linux Mint 21.1 (idle - browser open on reddit) ~ 90W More on reddit.com
🌐 r/linux
76
12
December 20, 2022
People also ask

How to check CPU power consumption in Linux?
You can monitor CPU power consumption using tools like powertop or by reading from /sys/class/power_supply/ for battery-powered devices. For a quick check, installing and running turbostat will show detailed power and frequency statistics of your CPU.
🌐
runcloud.io
runcloud.io › blog › check-linux-cpu-usage
How to Check Linux CPU Usage or Utilization (5 Ways)
How to check how many CPU cores you have in Linux?
You can quickly check your CPU cores by running nproc for logical core count or lscpu for detailed CPU architecture information, including physical and virtual cores. For a more detailed view, you can also read /proc/cpuinfo.
🌐
runcloud.io
runcloud.io › blog › check-linux-cpu-usage
How to Check Linux CPU Usage or Utilization (5 Ways)
How to find CPU utilization in OS?
The simplest way is to use the top command in the terminal, which shows real-time system statistics, including CPU usage per process. Alternatively, RunCloud's monitoring dashboard provides an easy-to-read interface showing CPU usage trends over time.
🌐
runcloud.io
runcloud.io › blog › check-linux-cpu-usage
How to Check Linux CPU Usage or Utilization (5 Ways)
🌐
Baeldung
baeldung.com › home › administration › finding the power consumption of a machine in linux
Finding the Power Consumption of a Machine in Linux | Baeldung on Linux
March 18, 2024 - powerstat is another tool that we can use to measure power consumption. The tool provides advanced statistics on battery information and several options to customize the tests.
🌐
Abilian
lab.abilian.com › Tech › Green IT › Power consumption (Linux servers)
Power consumption (Linux servers) - Abilian Innovation Lab
April 6, 2026 - We’ll explore techniques using built-in hardware sensors, software tools, and external power meters to gather precise measurements of power consumption. These methods apply to servers, desktops, and laptops configured with Linux. Intel’s Running Average Power Limit (RAPL) framework provides detailed power consumption metrics for CPUs, DRAM, and GPUs.
🌐
BinaryTides
binarytides.com › home › how to monitor cpu power consumption in watts on ubuntu
How to monitor cpu power consumption in watts on Ubuntu - BinaryTides
November 19, 2022 - root@li240-5:~# turbostat Command 'turbostat' not found, but can be installed with: apt install linux-intel-iotg-tools-common # version 5.15.0-1017.22, or apt install linux-nvidia-tools-common # version 5.15.0-1007.7 apt install linux-tools-common ...
🌐
Reddit
reddit.com › r/linux_gaming › help monitoring cpu/gpu power consumption
r/linux_gaming on Reddit: Help monitoring CPU/GPU power consumption
November 28, 2021 -

Hi community,

I've been trying to read power consumption of my CPU/GPU for the past few days.

PC specs:
CPU: Ryzen 5 3600
GPU: Radeon RX570 4G
Motherboard: Gigabyte Aorus Elite v2 rev1.0 B450.
OS: Arch btw, kernel: linux-lts

I've managed to change cpu governor and core frequencies using cpupower and cpupower-gui, but im not able to read CPU power consumption. I've tried all apps mentioned on the Ryzen Archwiki, most of them managed to run but didn't show any useful info/functions.

With GPU its a bit different: I've managed to manually set GPU power profiles ( AMDGPU Archwiki ) and read frequencies and power consumptiom with lm_sensors but my GPU power consumption on idle is around 30W on powersave mode compared to 6-10W in Windows as read in CPUID HWMonitor and MSI Afterburner. What may cause such a big difference? Are there any apps to monitor both CPU and GPU or just GPU and set different power modes? How to decrease GPU power consumption on idle?

output of lspci -v for GPU:

07:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] (rev ef) (prog-if 00 [VGA controller])
    Subsystem: Gigabyte Technology Co., Ltd Radeon RX 570 Gaming 4G
    Flags: bus master, fast devsel, latency 0, IRQ 71, IOMMU group 16
    Memory at d0000000 (64-bit, prefetchable) [size=256M]
    Memory at e0000000 (64-bit, prefetchable) [size=2M]
    I/O ports at e000 [size=256]
    Memory at fce00000 (32-bit, non-prefetchable) [size=256K]
    Expansion ROM at 000c0000 [disabled] [size=128K]
    Capabilities: [48] Vendor Specific Information: Len=08 <?>
    Capabilities: [50] Power Management version 3
    Capabilities: [58] Express Legacy Endpoint, MSI 00
    Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
    Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
    Capabilities: [150] Advanced Error Reporting
    Capabilities: [200] Physical Resizable BAR
    Capabilities: [270] Secondary PCI Express
    Capabilities: [2b0] Address Translation Service (ATS)
    Capabilities: [2c0] Page Request Interface (PRI)
    Capabilities: [2d0] Process Address Space ID (PASID)
    Capabilities: [320] Latency Tolerance Reporting
    Capabilities: [328] Alternative Routing-ID Interpretation (ARI)
    Capabilities: [370] L1 PM Substates
    Kernel driver in use: amdgpu
    Kernel modules: amdgpu
Find elsewhere
🌐
Ubuntu
manpages.ubuntu.com › bionic › man(8)
Ubuntu Manpage: powerstat - a tool to measure power consumption
The output is like vmstat but also shows power consumption statistics. At the end of a run, powerstat will calculate the average, standard deviation, minimum, maximum and geometic mean of the gathered data. Note that running powerstat as root will provide extra information about process fork(2), exec(2) and exit(2) activity. ... redo a sample measurement if a system is busy, the default for busy is considered less than 98% CPU idle.
🌐
RunCloud
runcloud.io › blog › check-linux-cpu-usage
How to Check Linux CPU Usage or Utilization (5 Ways)
October 21, 2025 - You can monitor CPU power consumption using tools like powertop or by reading from /sys/class/power_supply/ for battery-powered devices.
🌐
LinuxConfig
linuxconfig.org › home › how to check and tune power consumption with powertop on linux
How to check and tune power consumption with Powertop on Linux
August 29, 2023 - Powertop is a free and open source utility developed by Intel to monitor power consumption on Linux. The tool is able to display and export reports about the estimated discharge rate, and statics about processors and devices behavior.
🌐
Reddit
reddit.com › r/homelab › how do you monitor power consumption?
r/homelab on Reddit: How do you monitor power consumption?
August 14, 2023 -

Since power usage (at least cpu-wise) is fairly easy to monitor in windows (hwinfo). Is there is a cli equivalent for linux?

Top answer
1 of 13
6
PowerTop can be used to monitor power usage at the process level as described in How to monitor power usage in Linux , but it doesn't monitor total system power consumption (memory, drives, PSU, etc.), at least to my understanding. I use lm-sensors as described in How to install sensors (lm-sensors) on Ubuntu / Debian Linux for monitoring CPU core temperatures along with the Telegraf lm-sensors plugin for writing these to InfluxDB and displaying them in Grafana. Some have suggested this, but I don't see power consumption reported by lm-sensors on my servers, a mix of Supermicro X8 systems and Lenovo Tiny desktops. I have monitored power consumption using two methods: Initially, by running SNMP queries (in a Python script) to an APC AP7801 , networked, metered PDU. I bought this PDU (cheaply on eBay) with the expectation to monitor individual outlets, but I didn't dig deep enough before buying it and learned later that it reports only total power consumption for all outlets. Currently, I use the Telegraf apcupsd plugin on the host (Debian-based NAS) that monitors my APC BackUPS Pro 1500 through USB. This provides all information available in the apcaccess command, and also is written to InfluxDB and displayed in Grafana. Again, both of these methods monitor only total power consumption. There are two options for monitoring power consumption of individual systems: Use a networked, metered PDU that monitors power consumption by outlet rather than a total. These are available, for example the CyberPower PDU81004 Switched Metered-By-Outlet PDU, 100-240V/15A, 8 Outlets, 1U Rackmount , but can get pretty pricey. Use smart plugs that include power monitoring, like these TP-Link Kasa Matter Smart Plug w/ Energy Monitoring .
2 of 13
4
My choice https://www.amazon.com/P3-P4400-Electricity-Usage-Monitor/dp/B00009MDBU
🌐
Arch Linux Forums
bbs.archlinux.org › viewtopic.php
How can I see CPU watts usage? command [Solved] / Newbie Corner / Arch Linux Forums
Hi, How can I see how much watts my cpu is using. Is there a command? A program? ... OK. But I don't know how. People are talking about how their eeepc uses 6watts. I wanna see how much mine uses. ... Usage: powertop [OPTION...] -d, --dump read wakeups once and print list of top offenders -t, --time=DOUBLE default time to gather data in seconds -h, --help Show this help message -v, --version Show version information and exit
🌐
Linux Mint Forums
forums.linuxmint.com › board index › main edition support › software & applications
power consumption monitor? - Linux Mint Forums
October 11, 2024 - Check for example this https://www.baeldung.com/linux/power-consumption 1. Please note that the measurements are approximate and may differ from the actual ones. 2. Sensors do not return values ​​in watts very often. The unit of power is calculated. P = U * I So the apps show the calculated ...
🌐
Red Hat
docs.redhat.com › en › documentation › red_hat_enterprise_linux › 8 › html › monitoring_and_managing_system_status_and_performance › managing-power-consumption-with-powertop_monitoring-and-managing-system-status-and-performance
Chapter 16. Managing power consumption with PowerTOP | Monitoring and managing system status and performance | Red Hat Enterprise Linux | 8 | Red Hat Documentation
The PowerTOP tool can provide an estimate of the total power usage of the system and also individual power usage for each process, device, kernel worker, timer, and interrupt handler. The tool can also identify specific components of kernel and user-space applications that frequently wake up ...
🌐
Stack Overflow
stackoverflow.com › questions › 63820115 › how-to-get-cpu-cores-energy-consumption-in-linux-kernel
c - How to get CPU cores' energy consumption in Linux kernel? - Stack Overflow
So what I want is monitoring CPU's energy consumption in the kernel's CPUFreq driver each time I do DVFS. ... I do know the powecap outputs data via sysfs to userspace, so I think it should be possible to directly get it in kernel-level. ... There's 2 cases - averaged power consumption of a longer period of time (that can't be used for high frequency measurements), and instantaneous power consumption (that could be used for high frequency measurements).
🌐
GoLinuxHub
golinuxhub.com › 2018 › 06 › how-to-measure-power-consumption-in-watts-powerstat-linux-examples
How to measure power consumption in watts using powerstat in Linux with examples | GoLinuxHub
June 18, 2018 - This will give collective output with "C-State Statistics", "Average CPU Frequency", "Thermal Zone Temperatures" and "Power Histogram" # powerstat -a -R 1 60 Running for 60.0 seconds (60 samples at 1.0 second intervals). Power measurements will start in 0 seconds time.
🌐
Linux Man Pages
linux.die.net › man › 1 › cpupower-monitor
cpupower-monitor(1) - Linux man page
cpupower-monitor reports processor topology, frequency and idle power state statistics. Either command is forked and statistics are printed upon its ...
🌐
Medium
medium.com › @dreams-smoke › how-to-monitor-power-usage-of-your-linux-computing-system-with-prometheus-grafana-f21b9933762
How to monitor Power Usage of your Linux computing system with Prometheus/Grafana | by Saurabh Sarkar | Medium
November 11, 2023 - When we began exploring how to measure the power draw of my bare-metal Linux machine, we encountered numerous fragmented blogs, posts, and documentation that provided an incomplete picture. While some focused on CPU power draw or GPU power draw, it’s important to recognize that a Linux box ...
🌐
LinuxPunx
linuxpunx.com › home › how to check linux cpu usage or utilization (5 ways)
How to Check Linux CPU Usage or Utilization (5 Ways)
November 8, 2025 - You can monitor CPU power consumption using tools like powertop or by reading from /sys/class/power_supply/ for battery-powered devices.
🌐
Red Hat
redhat.com › en › blog › take-control-your-rhel-systems-power-consumption
Take control of your Red Hat Enterprise Linux systems’ power consumption with pmda-denki
November 23, 2025 - Current systems rarely have dedicated sensors for measuring power consumption. This article looks at the electrical consumption of computer workloads using three different data sources: RAPL readings: On most modern x86 systems, RAPL provides metrics relating to how much power is consumed by the CPU, RAM, and onboard GPU.