如何找到进程及其所有子进程的 CPU 资源利用率

如何找到进程及其所有子进程的 CPU 资源利用率

如果我有一个生成子进程的进程,是否有一个好方法来获取表示该进程及其子进程的 CPU 综合使用率的单个数字?即是否有一个简单的 shell 命令可用,或者 /proc 中可能有一些信息?

目标操作系统是 Centos 或 Ubuntu。

答案1

以这种方式运行一个进程:

time scriptname  # or
time command 

它将报告孩子加父母的总和

一旦添加守护进程这个词,情况就会发生变化。顶部将显示近似值,top -p [pid] 您还可以使用 C 或 perl 或 python 读取 /proc[pid]/stat.utime 和朋友(utime、stime、cuttime、cstime(以 c 开头的孩子))。一般来说,一旦习惯了这些数据,您可能会发现系统时间和用户时间对于性能评估变得与总 CPU 时间一样重要。

ps -p [pid] -o %cpu 信息量不是很大——它只显示当前使用的 cpu 数量,而不是累计时间。

相关内容