cygwin time命令总是返回0.00 for usertime

时间:2015-10-26 18:38:28

标签: windows cygwin

我正在尝试对从cygwin中运行的Windows程序的执行时间进行基准测试,并且无法使用'time'命令为除wallclock时间之外的任何内容生成值。

例如

time ghostpdl/bin/gswin64c.exe -sDEVICE=ppmraw -o temp.ppm -r2000 \
  ghostpdl/examples/transparency_example.ps 

返回:

real    0m39.313s
user    0m0.000s
sys     0m0.000s

/ bin / time命令的行为方式相同,声称使用了0%的CPU资源:

0.00user 0.00system 0:41.07elapsed 0%CPU (0avgtext+0avgdata 182016maxresident)k
0inputs+0outputs (721major+0minor)pagefaults 0swaps

似乎可以从cygwin检索Windows可执行文件的cpu时间和使用情况,因为它是顶级的:

  PID  USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                    
351568 Marcos H   8   0  576m 480m  45m R   99  5.9   0:10.84 gswin64c                                                                                                                   
352120 Marcos H   8   0  115m 109m  36m R   61  1.3   0:52.79 top                                                                                                                        

为什么top在cygwin上有61%的cpu使用率是不同的问题。而且我很欣赏“时间”返回的用户时间和顶部报告的TIME +并不是一回事,但我对其中任何一个都感到满意。

运行cygwin程序(例如/ bin / sort)时,按时间返回的值是合理的。

顺便说一句,我正在使用cygwin 2.2.1 x86_64运行Windows 7 SP1 64位(这就是uname -a返回的内容)。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

对于32位版本的cygwin,您可以安装procps的软件包 这不适用于64位版本的cygwin