例如,我知道 GNU 分析器 gprof,但我正在考虑一种可以以更黑盒的方式在任何程序上测量它的东西,在这种情况下我无法亲自编译程序。我也考虑过ps
,但这似乎只能给我一个快照。我更多地考虑程序的从开始到结束的运行。
理想情况下,我想要类似这样的东西:
black-box-profile [program-to-start-and-any-posible-child-processes] --outfile [report-file]
答案1
也许igprof
:
IgProf 是一款简单实用的工具,用于测量和分析应用程序内存和性能特征。IgProf 不需要对应用程序或构建过程进行任何更改。它目前适用于 Linux(ia32、x86_64)。
答案2
我认为任何 GNU 的标准之一就是 top。它具有批处理模式,可将输出发送到文件,它可以监视 PID - 也就是说,它可以专注于单个进程。它在 xterm 或其他 GUI 术语中运行。手册页“man top”
答案3
您可以使用 watch 命令:
watch 'ps -u -p processId | tail -n 1 >>output.txt'