GNOME-Usage Program Still Striving To Report Per-Program Power Analytics
While Microsoft Windows and Apple macOS along with the likes of Google's Android offer per-program/application power reporting for informing users what software is consuming the most power at the moment on the system, the Linux desktop at large really lacks this capability in any meaningful manner across the different desktop environments. Work was started for GSoC 2018, but GNOME in 2020 is still ultimately figuring out how to handle this. At GUADEC 2020 this week, former GSoC developer Aditya Manglik presented on this undertaking.
Making matters more difficult on the Linux side is that power sensors exposed under Windows/macOS often go unsupported on Linux. Or there are cases like the AMD Zen Energy Driver only being mainlined now with Linux 5.8. A lot of consumer PC hardware also lacks power sensors for the likes of RAM and storage power utilization along with other onboard chips for any detailed profiling capability. Even on the Windows side, a lot of power estimates and models seem to be utilized.
Ultimately the likely scenario to be pursued is at least being able to leverage the battery power consumption rate on laptops and utilizing some well-tuned models for being able to provide some extrapolated estimates on power consumption for the different areas and for per-program reporting. Power information on Intel CPUs (and now AMD with the amd_energy driver in Linux 5.8+) is also at least fairly safe to come by these days as well as one of the key inputs. The accuracy though will largely depend upon the user's hardware and quality of the yet-to-be-generated models.
Beyond the obvious technical challenges, there are also other obstacles around this process such as data privacy concerns if soliciting power samples from the community for creating these possible models. Long story short, don't look for GNOME to be providing these per-application power analytics like macOS and Windows in the near term.
Those interested in finding out more on this effort can see the slide deck from Aditya's presentation.