【发布时间】:2014-06-10 08:54:11
【问题描述】:
在 linux 中获取时间戳与 linux 的时钟周期相同。 我知道如何获取时间戳,但我现在不知道如何获取时钟周期。 有人能告诉我这两者有什么区别吗?? 有人可以给我一个时钟周期的小例子吗??
期待您的回复。
额外:我正在尝试使用简单标量模拟器在比萨架构中添加汇编指令以进行计时。对于我的指令,我应该访问时钟周期并将其存储在寄存器中。
【问题讨论】:
-
大多数现代 CPU 的时钟频率会根据需求、温度等动态变化,因此计算 CPU 时钟周期非常困难 - 您通常需要为此访问 CPU 性能寄存器。
-
感谢您的回复。能给我举个小例子吗?
-
这取决于您使用的 CPU 以及您对性能寄存器的访问权限 - 对此 AFAIK 没有简单的“一刀切”的答案。
-
顺便说一句,请确认您是想要 CPU 时钟周期,还是只想将经过的时间转换为刻度(这只是一个单位转换)?
-
以下答案建议我使用clock_gettime。但是如何将其添加到性能寄存器中??