python计时长程序/模拟运行?

时间:2014-07-17 05:30:50

标签: python

使用python开始建模/模拟运行(tuflow)并将运行记录到db 目前在Windows上,python 2.7并使用timeit()。

坚持使用timeit()或切换到使用time.clock()更好吗?

模拟/建模运行可以是几分钟到一周+。 需要相当准确的运行时间。

我知道time.clock已经在3.3+上折旧但是我看不到这段代码很长一段时间都被移到了3。

self.starttime = timeit.default_timer()
run sim()
self.endtime = timeit.default_timer()
self.runtime = self.starttime - self.endtime

1 个答案:

答案 0 :(得分:1)

timeit的`timeit()函数多次执行代码并获得最佳效果,因此对于冗长的运行来说,它不是一个很好的选择。但是您的代码只使用计时器,其文档警告它会测量经过的时间,因此您需要尽可能确保标准运行条件。如果你想测量实际的CPU使用率,那就是那个转发器。

当你说'#34;合理准确"时间,两分钟的百分之一是2.4秒。 time.clock()或默认计时器的精度永远不会小于一秒。这够准确吗?

为了减少迁移到Python 3的任何可能性,您可以定义自己的计时功能。在Python 2上它可以使用time.clock()但是如果你进行迁移,至少你只有一个地方可以改变代码。