只是,想确定一下。
我有一个测量程序执行时间的小python脚本,它只是在外部程序启动之前节省时间,然后在程序结束执行后减去这个值。
在 perl 脚本上运行此脚本时,它显示执行时间为 0.49263,当使用 NYTProf 运行相同的脚本并查看由 nytprofhtml 生成的 HTML 报告时,我可以看到执行时间为 0.80784,几乎是两倍。
这个可以吗?我想分析应该会增加执行时间,但会增加多少?
只是,想确定一下。
我有一个测量程序执行时间的小python脚本,它只是在外部程序启动之前节省时间,然后在程序结束执行后减去这个值。
在 perl 脚本上运行此脚本时,它显示执行时间为 0.49263,当使用 NYTProf 运行相同的脚本并查看由 nytprofhtml 生成的 HTML 报告时,我可以看到执行时间为 0.80784,几乎是两倍。
这个可以吗?我想分析应该会增加执行时间,但会增加多少?
这是正常的,因为 Devel::NYTProf 需要查看每个语句(和块等)。它需要为每个语句将分析数据写入磁盘。这样做的成本相当高。这就是为什么你不应该在生产中运行它。
文档中有一些关于如何使其运行得更快的信息。
如果您在 linux 命令行上运行,则不需要任何其他程序来获取命令的执行时间。只需在外壳上执行此操作:
$ time perl foo.pl