我正在尝试理解我使用的两个安全库的一些基准测试结果。当我运行基准测试时,我注意到前几个测试比预期的要慢。这里,较慢意味着性能下降了大约 0.5 到 0.1 个周期/字节 (cpb)。也就是说,平均需要额外的 0.5 到 1.0 个周期来处理一个字节。
例如,当我复制/粘贴三个测试到bench.cpp
:620(CCM、EAX 和 GCM 模式)到文件顶部,文件底部的测试比在文件顶部执行的相同测试运行得更快。只有测试的位置会发生变化。
我对 iCore 等现代英特尔机器有一些疑问。
CPU 控制模式是否会转换,还是 BIOS/UEFI 是否会处理切换?
CPU 从睡眠或空闲模式到标称频率和最大频率的预期转换是什么时候?