我正在使用“time”命令在Linux上分析一个程序。 问题是它的输出不是很有统计意义,因为它只运行一次程序。 有一种工具或方法可以平均获得几次“时间”运行吗? 可能aswe连同统计信息,如偏差?
设置分析的cpu亲和力
哪里可以find一个用于减lessMSVC ++ / Windows上二进制大小的分析器?
ETW:通过现有的提供者发送事件
在程序启动时测量dynamic链接所花的时间?
这里是我写的一个脚本来做类似于你正在寻找的东西。 它运行提供的命令10次,记录真实的用户cpu和系统cpu时间到一个文件,并在每个命令输出后回显tham。 然后它使用awk来提供文件中每列的平均值,但是不包括标准偏差。
#!/bin/bash rm -f /tmp/mtime.$$ for x in {1..10} do /usr/bin/time -f "real %e user %U sys %s" -a -o /tmp/mtime.$$ $@ tail -1 /tmp/mtime.$$ done awk '{ et += $2; ut += $4; st += $6; count++ } END { printf "Average:nreal %.3f user %.3f sys %.3fn",et/count,ut/count,st/count }' /tmp/mtime.$$
像上面提到的评论者一样,听起来好像你可能想要使用循环多次运行你的程序,以获得更多的数据点。 您可以使用带-o选项的time命令将time命令的结果输出到文本文件,如下所示:time -o output.txt myprog
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。