标签: profiling

有没有像 time 这样的命令,但用于内存使用?

有没有类似的命令time,但它会报告更多的统计信息?如果我能做这样的事情,那就太好了:

$ statistics some_command
time:
    real    0m3.002s
    user    0m0.000s
    sys     0m0.000s
memory:
    min     41K
    peak    2.5M
    mean    1.1M
. . .
Run Code Online (Sandbox Code Playgroud)

如果能走得更远,那就太好了。现在,为了调试,我要么全神贯注地盯着top(实际上glances),要么在我的代码中散布语句。

如果有什么我可以传递命令的东西,那就太棒了。

编辑

我可能已经找到了一个解决方案:perf在包linux-toolslinux-tools-commonUbuntu 12.04 上。

$ perf stat ./someprocess
Performance counter stats for './someprocess':

      12007.384578 task-clock                #    0.996 CPUs utilized          
             1,092 context-switches          #    0.000 M/sec                  
                16 CPU-migrations            #    0.000 M/sec                  
           295,102 page-faults               #    0.025 M/sec                  
    40,553,682,299 cycles                    #    3.377 GHz                     [83.33%]
    18,400,458,723 stalled-cycles-frontend   #   45.37% frontend …
Run Code Online (Sandbox Code Playgroud)

memory linux time profiling

49
推荐指数
3
解决办法
2万
查看次数

在 Firefox 中分析加载项

我喜欢 ie9 的一项新功能是它会提醒您哪些附加组件使您的浏览器运行缓慢。有没有办法在 Firefox 中访问类似的信息?

firefox performance profiling internet-explorer-9 firefox-extensions

6
推荐指数
1
解决办法
1123
查看次数

当 zsh 超过某个可配置的阈值时,有没有办法在 zsh 中打印出执行时间(挂墙时间)?

@mpy 的评论是正确的。所以我要重新表述我的问题。我真的很喜欢 zsh 中的 REPORTTIME 功能,但是根据zsh doc,它仅在用户 + 系统时间大于 $REPORTTIME 时报告时间。有没有办法让 zsh 在挂墙时间大于某个数字时报告时间,但在挂墙时间低于该数字时不报告时间?

原始问题:我真的很喜欢 zsh 中的 REPORTTIME 功能,但是根据zsh doc,它只会在命令结果非零时输出。但是在某些情况下,某些命令需要一段时间并失败,我想知道花了多长时间。有谁知道即使结果失败也能打印出命令时间的方法?

zsh profiling

6
推荐指数
1
解决办法
1278
查看次数