51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 4337|回复: 7
打印 上一主题 下一主题

[原创] 导致系统在进程或线程之间切换过于频繁的原因(已解决!)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-4-29 09:05:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1. Context switches rate的值(一个3.40GHz的CPU)
最小           平均              最大

1762.26        4544.357          5687.818

关于这个计数器的值,有这种解释:如果切换次数在5000*CPU个数和10000*CPU个数之间,说明它忙于切换线程而不是处理。但是我在chinaunix的论坛里看到另一个说法,说这个数值大于3000就说明有问题,我应该根据哪个来判断呢?
还有,这个计数器的值过大可能是什么原因导致的呢?
同时还有一个计数器的值比较异常
2. paging rate值:
最小                 平均                      最大

453.538              3771.14                   7607.34
这个计数器的解释:Paging rate,推荐00-20(如果服务器没有足够的内存处理其工作负荷,此数值将一直很高。如果大于80,表示有问题)。这些计数器的值比较低,说明服务器响应请求比较快,否则可能是服务器系统内存短缺引起( 也可能是缓存太大,导致系统内存太少)

这样看来我测的这个值大的有点离谱哦~~~又或者这个值要按照不同的机器配置自己算?如果是,哪位知道计算公式告诉我一下吧~~


最后一个问题,interrupt rate的值怎么计算?还是象上一个问题,有一个推荐的判断标准呢?


大家,拜托了~~~
就算我的问题太白痴也出来一个代表说一下啊~~~~sdlkfj9


[ 本帖最后由 ireneyao 于 2007-4-30 08:50 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2007-4-29 11:57:49 | 只看该作者
晕~~
又沉下去了~~

[ 本帖最后由 ireneyao 于 2007-4-29 14:40 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-4-29 14:40:22 | 只看该作者
晕,第二次下沉~~~~捞起来~~~
怎么没人理我呢
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2007-4-29 16:30:07 | 只看该作者
贴子更新速度好快啊~~~
又沉了sdlkfj9
大家,各位,同仁们~~~~给点意见哦~~~
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2007-4-29 17:04:54 | 只看该作者
为什么没有人回答我的问题~~~
就算我的问题太白痴你们也指出来啊sdlkfj9
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-4-29 19:20:50 | 只看该作者
在性能分析的过程当中,好多所谓提供的资料都并不是一个评价的标准,所以这一点不要以别人的资料为标准.在分析的过程,最主要是结合你测试结果和其它计数器组合起来分析,例如Context switches切换率在2000,如果你要以5000*个数~10000*CPU个数来看的话,你肯定认为是瓶颈,但假如你的processor time只有75呢,那到底又是不是瓶颈呢.我想说的是,这个值并不是唯一衡量的标准,因为你要根据其它计数器来判断你的结果,随着硬件设备的不断升级,对于效率的支持也越来越高.例如微软自己对于System\Processor Queue Length计数器是这样描述的:是处理器队列的线程数量。与磁盘计数器不同,此计数器只显示就绪线程,而不是正在运行的线程。即使运行多处理器的计算机只有一个处理器队列。因此,如果一台计算机有几个处理器,您需要将此值除以处理工作量的处理器数量。每个处理器,不管工作量大小,如果保持 10 个以下线程的处理器队列,通常是可以接受的。

但我队列在2的时候就已经导致事务TIMEOUT啦.那能说明这没有瓶颈吗.
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2007-4-29 20:16:44 | 只看该作者
谢谢楼上的回答
想再问一下,我问的那几个计数器的计算公式是什么呢?就像你说的process time一样。
总要有个标准吧,不然就算服务器当掉,比如你说的process time为2,那可能就不是这里的问题,可能从别的计数器的非正常值上去判断对吗?所以还是要有一个标准的,不然那么多个计数器,我应该觉得哪个是有问题的呢?又怎么去判断瓶颈呢?

[ 本帖最后由 ireneyao 于 2007-4-29 20:21 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2007-4-29 22:08:34 | 只看该作者

回复 #7 ireneyao 的帖子

没有绝对的标准,根据你的硬件配置不同,可能差别很大。

这个方面可以参考你的配置和需求,比如有的系统的CPU达到80%才算性能问题,有些可能50%就已经超出性能需求了。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-5-5 12:33 , Processed in 0.076126 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表