我试图了解如何对单个指令进行基准测试,并撰写了以下英特尔基准测试文章:https://www.intel.com/content/dam/www/public/us/en/documents/white-papers/ia-32-ia-64-benchmark-code-execution-paper.pdf
因此,我们使用rdtsc
来读取时钟周期数。但是,按照英特尔手册17.17 TIME-STAMP COUNTER
中的规定,cpus以固定速率递增它,该速率可能不同于当前时钟频率。
对于奔腾4处理器,英特尔至强处理器[...]: 印记计数器以恒定速率递增。可以设置该速率 通过处理器的最大核心时钟与总线时钟之比 可以通过最大解析频率设置 处理器启动。
所以我有2个问题:
rdtsc
这样的旧CPU的实际CPU时钟周期?