免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1513 | 回复: 4
打印 上一主题 下一主题

[系统管理] CPU利用率的问题 [复制链接]

论坛徽章:
3
CU大牛徽章
日期:2013-04-17 11:48:26CU大牛徽章
日期:2013-04-17 11:48:40CU大牛徽章
日期:2013-04-17 11:48:45
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-03-07 10:22 |只看该作者 |倒序浏览
本来就是想通过写个小程序测试CPU利用率从而可以检验其他的工具性能之类的数据,后来参照IPbench中的cpu_target_lukem插件实现我们的功能,原理很简单:就是我们给程序设置了极低的优先级,如果有任何计算任务都会打断它,而如果没有计算任务,我们的程序就会占用cpu时间,所以我们的程序的运行时间基本上可以算作CPU的闲暇时间。
所以我们计算总的CPU利用率的方法就是  : CPU利用率 = 1 - 程序占用cpu时间/程序总的运行时间。

但是 我们编译运行本程序,程序输出为:
[11:43.32] dbg: Average CPU time is 5.2
[11:43.34] dbg: Average CPU time is 5.2
这时候我们使用 " ps -au "命令,会找到这一条信息:  
long     11741  95.7  0.0  19668   520 pts/16   SNl+ 11:40   2:58 ./a.out

所以ps命令显示的是我们a.out的CPU利用率高达95.7%(也就是说95.7%CPU都是闲暇的,所以我们的程序测得CPU利用率为5.2% 也相差不大)。

接着,我做了第二个测试,我把a.out拷贝了一份b.out,同时运行他们我们会看到如下信息:
a.out 显示的 :
[11:47.50] dbg: Average CPU time is 6.1
[11:47.52] dbg: Average CPU time is 6.1
b.out 显示的s :
[11:48.20] dbg: Average CPU time is 10.2
[11:48.22] dbg: Average CPU time is 10.2
这时候我使用 "ps -au" 再查看a.out和b.out信息如下:
long     11741 94.1  0.0  19668   520 pts/16   SNl+ 11:40   7:26 ./a.out
long     11905 90.9  0.0  19668   516 pts/17   SNl+ 11:46   2:08 ./b.out
卧槽,顿时崩溃啊!
到了这,我产生了三个疑问:
             第一、为毛运行a.out和b.out显示的CPU利用率不一样……
             第二、为毛在ps中显示的a.out和b.out的CPU利用率不一样?
             第三、为毛ps中a.out和b.out的CPU利用率分别为94.1%和90.0%,而两者加一起远远大于100%?!!我晕了,那Linux到底是如何定义CPU利用率的呢?

论坛徽章:
0
2 [报告]
发表于 2013-03-10 17:23 |只看该作者
PS看到的CPU利用率不是实时的,PS看到的是  程序占用的总CPU时间/程序运行时间

你这个需求,用top看吧..

论坛徽章:
3
CU大牛徽章
日期:2013-04-17 11:48:26CU大牛徽章
日期:2013-04-17 11:48:40CU大牛徽章
日期:2013-04-17 11:48:45
3 [报告]
发表于 2013-03-10 21:20 |只看该作者
top 和ps 看得结果是一样的,同一时间的CPU利用率两条命令的值是一模一样的回复 2# yanu


   

论坛徽章:
0
4 [报告]
发表于 2013-03-12 02:31 |只看该作者
你这机器上几个CPU? 几核的? 支不支持超线程?

论坛徽章:
3
CU大牛徽章
日期:2013-04-17 11:48:26CU大牛徽章
日期:2013-04-17 11:48:40CU大牛徽章
日期:2013-04-17 11:48:45
5 [报告]
发表于 2013-03-12 23:19 |只看该作者
回复 4# yanu


    long@long-Ubuntu:~$ cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
      2  AMD Athlon(tm) 64 X2 Dual Core Processor 4200+
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP