Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Rapl Energy
Small library for getting the CPU energy consumption from RAPL and friends.
This project is very much still a work in progress, and is mainly intended for internal use. However, I share it here should it be useful to anyone.
RAPL permissions
Reading RAPL requires elevated permissions.
I suggest adding a new rapl
group.
And then adding entries to /etc/sysfs.conf
for your RAPL domains and subdomains.
Check your folder hierarchy in /sys/class/powercap/
to determine which domains
you have available to your CPU.
Then for each domain, add the following lines to /etc/sysfs.conf
.
(Requires sysfsutils
to be installed.)
For example, for package 0:
And for its first subdomain:
Finally, restart the sysfsutils
service.
MSR permissions
Reading model-specific registers (MSR) requires elevated permissions.
You might need to run modprobe
as well.
One can then print the accumulated energy value as follows. (Where -a
prints
all CPUs, and -u
prints the value as an unsigned decimal.) On my AMD system
the address is 0xC001029A
, which I found in https://github.com/amd/amd_energy.
Check the documentation of your CPU to find your address.
Any executable making use of these MSR measurements must be run with sudo.
MSR group
Ideally I would like to create a group for MSR, to avoid needing to run with sudo every time. However, the approach below sadly does not resolve the problem. Please let me know if you know of a way to do this.