假设我编译的程序有./foo
和./bar
两种变体,我想知道bar
是否确实更快。
我可以通过运行time ./foo
和time ./bar
来比较运行时,但数字变化太大,无法在此处获得有意义的结果。
对两个命令行程序执行时间进行统计上合理比较的最快方法是什么?例如。还能告诉我测量结果的变化吗?
答案 0 :(得分:0)
python模块timeit
还提供了一个简单的命令行界面,这比多次发出time
命令要方便得多:
$ python -m timeit -s 'import os' 'os.system("./IsSpace-before")'
10 loops, best of 3: 4.9 sec per loop
$ python -m timeit -s 'import os' 'os.system("./IsSpace-after")'
10 loops, best of 3: 4.9 sec per loop
timeit模块不计算平均值和方差,而是根据所有测量误差增加测量结果,只计算最小值。