【发布时间】:2012-07-18 15:27:00
【问题描述】:
我正在尝试每毫秒对 CPU 寄存器进行采样并计算频率。为了进行准确的测量,我要求采样时间非常准确。我一直在使用 time.sleep() 来实现这一点,但睡眠在 1 秒后不是很准确。
我想做的是设置一个计数器并在该计数器达到某个值并且计数器以准确的速率递增时进行采样。我正在运行 Python 2.6。有人有什么建议吗?
【问题讨论】:
标签: python monitoring timing sampling
我正在尝试每毫秒对 CPU 寄存器进行采样并计算频率。为了进行准确的测量,我要求采样时间非常准确。我一直在使用 time.sleep() 来实现这一点,但睡眠在 1 秒后不是很准确。
我想做的是设置一个计数器并在该计数器达到某个值并且计数器以准确的速率递增时进行采样。我正在运行 Python 2.6。有人有什么建议吗?
【问题讨论】:
标签: python monitoring timing sampling
我怀疑那里可能有几个 Python 包可以-帮助-满足您的需求。我还怀疑 Python 不是该目的的正确工具。
有timeit模块
有一个带有clock()的时间模块,它不是一个挂钟,而是一个CPU使用时钟(用于初始化time.clock()对象的应用程序。它是一个浮点值,显示低于12位以上的数字放置即 1.12345678912345。Python 浮点数不知道那里的准确性,并且 time.clock() 的返回值不是我个人认为准确的东西。
您可以在 Google 上搜索其他一些 Python 内省工具,例如检查、itertools 和其他时间处理工具。但是我怀疑它们的准确性取决于测量同一事物的多次迭代的运行平均值。
【讨论】: