
下载 pcm
参考手册进行 build 遇到MacMSRDriver驱动问题,缺少 IOkit/IOlib.h 文件,下载MacKernelSDK
放到 pcm/src/MacMSRDriver 目录下,xcode 打开 MacMSRDriver工程文件,在 buildsettings 中searchpath 增加 MacKernelSDK 的 headers 和 library 的路径

编译生成 MacMSRDriver.kext 手动加载这个 kext,系统设置给予权限重启再加载一次
sudo chown -R root:wheel PcmMsrDriver.kext
sudo chmod -R 755 PcmMsrDriver.kext
sudo kextload -v PcmMsrDriver.kext


根据手册中的 manual install 章节,copy dylib 等文件到本地目录 /usr/local/bin 和 /usr/local/include 中
sudo cp libPcmMsr.dylib /usr/local/lib/
sudo cp MSRKernel.h /usr/local/include/
sudo cp MSRAccessor.h /usr/local/include/
最后启动 pcm 的命令行界面,结果如第一张图片所示
进入 pcm 的 build 文件夹下的 bin 文件夹
./pcm
没有驱动时从而启动失败时提示如下
===== Processor information =====
Hybrid processor : no
IBRS and IBPB supported : yes
STIBP supported : yes
Spec arch caps supported : yes
Max CPUID level : 22
CPU family : 6
CPU model number : 165
IOServiceOpen returned 0x10000003
Unable to build CPU topology
WARNING: Core 0 IA32_PERFEVTSEL0_ADDR is not zeroed 18446744073709551615
Access to Intel(r) Performance Counter Monitor has denied (Performance Monitoring Unit is occupied by other application). Try to stop the application that uses PMU.
Alternatively you can try running PCM with option -r to reset PMU.
如果需要 GUI 界面,还需要 docker 才能行,建议如果不是有多台设备需要监控的,就不要折腾这个了。
下载 docker destop ,安装启动
运行脚本 pcm/scripts/grafana 中的 start.sh ,这里要给本机 ip 地址,不能用 localhost
sudo bash start.sh http://192.168.50.165:9738
为了这么个监测软件,又是搭载了 http web,又是 docker,光下载软件的体积就超过 1000MB,而原来的 Intel power gadget 仅仅 1.3M, 这样搞下去,我只能说 Intel 迟早要玩完,原来有好好的版本不用,非要搞得这么大费周章,估计阿三们又大吹特吹 成果了。
最后完成的界面如下

最后,让我们说声,AMD YES !