核心原理:使用rdmsr指令读取cpu的msr寄存器,具体在寄存器的什么位置需要参考cpu的手册
AMD64 Architecture Programmer’s Manual 文档:
https://www.amd.com/system/files/TechDocs/40332.pdf
第二卷的3.2及13.2描述了性能相关的msr的信息
实现方法参考C#的OpenHardwareMonitor的Hardware/CPU/AMD17CPU中316行左右的GetMultiplier(获取倍频)和GenericCPU的270行(获取总线频率),相乘即得到实时频率。
顺便Intel® 64 and IA-32 Architectures Software Developer’s Manuals 文档:https://www.intel.com/content/www/us/en/developer/articles/technical/intel-sdm.html
msr信息在第四卷