10 个版本
0.1.9 | 2024 年 7 月 24 日 |
---|---|
0.1.8 | 2024 年 7 月 23 日 |
0.1.2 | 2024 年 6 月 26 日 |
#204 在 性能分析
667 每月下载量
16KB
369 行
Rapl Energy
从 RAPL 和其他相关工具获取 CPU 能耗的小型库。
该项目仍然是一个正在进行中的项目,主要用于内部使用。不过,如果对任何人有用,我也在这里分享它。
RAPL 权限
读取 RAPL 需要提升权限。
我建议添加一个新的 rapl
组。
sudo addgroup rapl
sudo usermod -aG rapl $(whoami)
然后添加必要的条目到 /etc/sysfs.conf
。 (需要安装 sysfsutils
。)
mode class/powercap/intel-rapl:0/energy_uj = 0440
owner class/powercap/intel-rapl:0/energy_uj = root:rapl
mode class/powercap/intel-rapl:0:0/energy_uj = 0440
owner class/powercap/intel-rapl:0:0/energy_uj = root:rapl
MSR 权限
读取特定模型的寄存器 (MSR) 需要提升权限。
sudo apt install msr-tools
你可能还需要运行 modprobe。
modprobe msr
然后可以按以下方式打印累积的能量值。 (其中 -a
打印所有 CPU,而 -u
将值以无符号十进制形式打印。)
sudo rdmsr 0xC001029A -au
看起来必须用 sudo 运行可执行文件。我仍在研究是否可以用组来完成。
sudo ./target/debug/examples/amd
MSR 组
创建一个 MSR 组可能很有用。遗憾的是,这并没有解决上述问题。
sudo groupadd msr
sudo chgrp msr /dev/cpu/*/msr
sudo chmod g+rw /dev/cpu/*/msr
sudo usermod -aG msr $(whoami)
newgrp msr
依赖关系
~0.8–2.7MB
~44K SLoC