获取CPU利用率信息

时间:2011-06-01 05:03:25

标签: linux cpu-usage

如何通过linux中的进程时间信息获取CPU利用率?基本上我想让我的应用程序一夜之间运行。同时,我想在应用程序运行期间监视CPU利用率。

我试过顶级| grep appName>&日志,它似乎没有在日志中返回任何内容。有人可以帮我这个吗?

感谢。

5 个答案:

答案 0 :(得分:2)

vmstat iostat 都可以为您提供此类性质的定期信息;我建议手动设置次数,或者将单个轮询放入cron作业,然后将输出重定向到文件:

vmstat 20 4230 >> cpu_log_file

这将为您提供24小时内每20秒使用一次的快照。

答案 1 :(得分:1)

安装sysstat包并运行sar

nohup sar -o output.file 12 8 >/dev/null 2>&1 &

答案 2 :(得分:0)

使用top或watch命令

PID    COMMAND      %CPU TIME     #TH  #WQ  #PORT #MREG RPRVT  RSHRD  RSIZE  VPRVT  VSIZE  PGRP  PPID  STATE    UID  FAULTS    COW    MSGSENT    MSGRECV    SYSBSD    SYSMACH   CSW       PAGEINS USER
10764  top          8.4  00:01.04 1/1  0    24    33    2000K  244K   2576K  17M    2378M      10764 10719 running  0    9908+     54     564790+    282365+    3381+     283412+   838+          27      root
10763  taskgated    0.0  00:00.00 2    0    25    27    432K   244K   1004K  27M    2387M  10763 1     sleeping 0    376       60     140        60         160       109       11        0       root

答案 3 :(得分:0)

编写一个调用您的流程的程序,然后调用getrusage(2)并报告其子项的统计信息。

答案 4 :(得分:0)

您可以在程序运行时使用top监控程序使用的时间。

或者,您可以使用time命令启动应用程序,该命令将打印程序在执行结束时使用的总CPU时间。只需输入time ./my_app,而不只是./my_app

有关详细信息,请man 1 time