使用Python Popen对脚本进行基准测试?

时间:2011-04-28 14:23:24

标签: python process benchmarking popen

我有一个脚本(它是一个预备的hadoop pig脚本),我想从中测量执行时间。我可能计划多次运行测试,并将平均/中位时间作为执行时间。

由于手动多次启动脚本可能会非常麻烦,我想编写一个脚本来运行这些测试。

使用Python的Popen来启动一个执行脚本并测量进程运行时间的新进程是个好主意,比如说:

# start timer
p = subprocess.Popen(...)
stdout, stderr = p.communicate()
# end timer

创建新流程是否会使结果在时间测量中产生偏差,或者这个方法是否合适?还有其他建议吗?

最佳, 将

1 个答案:

答案 0 :(得分:2)

我也只使用time实用程序:

time python foo.py

然后,您可以制作一个bash脚本来多次运行,记录每次运行所花费的时间。然后,使用shell实用程序或Python脚本对它们进行平均。