Did*_*set 23 performance time benchmark time-utility
我正在执行time
一些命令。现在为了平均测量值,我想按照指定的次数运行和计时我的命令,并获得具有计算平均值和标准偏差的结果。结果是这样的:
avgtime -n 100 my_command
real 0m5.388s stdev 0m0.068s
user 0m5.380s stdev 0m0.067s
sys 0m0.004s stdev 0m0.000s
Run Code Online (Sandbox Code Playgroud)
是否有用于此的 UNIX 工具?GNU/Linux 有吗?
bhd*_*dnx 11
您可以尝试使用 timeit 模块,该模块可在任何使用 Python 的系统中使用:
$ python -m timeit "__import__('os').system('my command here')"
10 loops, best of 3: 591 msec per loop
Run Code Online (Sandbox Code Playgroud)
小智 8
超精细是另一种选择。
使用示例:
hyperfine --warmup 3 'my_command'
Run Code Online (Sandbox Code Playgroud)
请参阅相关问题。
它不完全是一个 UNIX 或 GNU/Linux 工具,但您可以非常轻松地使用R软件环境进行统计计算。(不过,我找不到任何更具体的信息来完成您的任务。)
编辑我怎么能怀疑呢,当然有一个基准包R
:rbenchmark
。它显然包装了system.time()
您也可以直接使用。 或者看看这个,一个简单的秒表功能对。 另请参阅“执行系统命令”@Rosetta 代码(或者不这样做,它是system("command")
。)
Edit2我刚刚在右侧的“相关”列中看到这个问题“测量脚本内的时间”N
,这也可以使用,即花费时间,执行for循环(次),再次花费时间,计算时间跨度,除以N
。(更简单的是,尝试time ( for-loop )
解析其输出,除以N
)。