执行perl测试的时间指定了什么

执行perl测试的时间指定了什么,perl,automation,Perl,Automation,我有大量基于Selenium的perl测试脚本。完成测试后,它会打印一份日志,如下所示。这说明了什么?以下时间是如何计算的,以什么为基础 Files=1, Tests=17, 209 wallclock secs ( 0.13 usr + 0.01 sys = 0.14 CPU) 跑了209秒。这些秒是根据墙上(或手腕上)的时钟经过的时间 这段时间的大部分时间都花在了等待上。等待?嗯,CPU花了很多时间等待,所以当时间流逝时,CPU没有处理正在计时的程序。我们之所以知道这一点,是因为据报道

我有大量基于Selenium的perl测试脚本。完成测试后,它会打印一份日志,如下所示。这说明了什么?以下时间是如何计算的,以什么为基础

Files=1, Tests=17, 209 wallclock secs ( 0.13 usr +  0.01 sys =  0.14 CPU)
跑了209秒。这些秒是根据墙上(或手腕上)的时钟经过的时间

这段时间的大部分时间都花在了等待上。等待?嗯,CPU花了很多时间等待,所以当时间流逝时,CPU没有处理正在计时的程序。我们之所以知道这一点,是因为据报道,实际的CPU时间只有0.14秒,这意味着几乎所有的209秒都在等待

在花在工作上的时间和花在工作上的时间之间还有进一步的区别。简单地说,前者指的是CPU在程序上花费的时间,而后者指的是CPU处理系统调用所花费的时间,即代表程序对操作系统进行的调用

多核附录:正如@ArtM指出的,或者更确切地说是让我发现,
usr
sys
的时间对于程序运行的所有核都是累积的,这意味着,在某些情况下,总CPU时间或甚至
usr
sys
中的任何一个都可能高于wallclock时间,这似乎有些奇怪,但在考虑多核上的并行性时,这是有意义的


如果您想进一步了解这个
usr/sys
或用户模式与内核模式的问题,请查看。

@HarshaVardhan-有一个测试脚本文件包含17个测试。(测试类似于
is$got,'bla','got bla';
-有关详细信息,请参阅和。)@Lumi,最好提及这些时间与多核上的CPU核之间的关系CPUs@ArtM-请随意添加信息。我不知道有什么特别的关系。Wallcock就是Wallcock,我猜其他的都是累积的好的,快速搜索表明。@ArtM没错。唯一有趣的事实是,如果系统是多核的,并且测试代码是并行的且CPU受限的,那么总CPU时间有可能大于wallclock时间。@hobbs,是的,我知道;先前评论的目的是让Lumi也看到这一点,因此如果他愿意,他可以完成回答
209 wallclock secs ( 0.13 usr +  0.01 sys =  0.14 CPU)