51Testing软件测试论坛

标题: 【已解决】mmdrv.exe进程占用CPU近100%,且占用内存持续增长 [打印本页]

作者: shwonder    时间: 2010-7-20 16:19
标题: 【已解决】mmdrv.exe进程占用CPU近100%,且占用内存持续增长
问题描述:
LR9.x在中文版的Windows下跑负载时,会出现mmdrv.exe进程占近100%,且使用内存不断上涨的现象。使用网友的替换wsrun32.dll和修改区域语言两种方法均不凑效。
替换wsrun32.dll:http://bbs.51testing.com/viewthread.php?tid=105717
修改区域语言:http://www.51testing.com/index.p ... space-itemid-110561

现象描述:
虚拟用户在run状态下,仅仅使用了10个测试虚拟用户,运行时间为默认的10分钟。此时,Windows(XP、2003)任务管理器中的mmdrv.exe进程占用的cpu持续保持99%,且该进程占用的内存不断攀升,从10M左右涨至百M,甚至更高。

LoadRunner版本:
8.1/9.0/9.1/9.5,其中8.1使用的是中文版本,且打上了FP4。

难道是Windows升级了某个补丁引起了新问题???

[ 本帖最后由 shwonder 于 2010-7-20 23:32 编辑 ]
作者: 云层    时间: 2010-7-20 16:31
哦,遇到这个问题了么?你确认你用的是sockets协议?
其次你单个用户回放遇到mmdrv.exe 100%占用的问题?
作者: zdyrain    时间: 2010-7-20 16:41
我的问题类似,虽然cpu不是100%,但是一直50%左右,LR处于假死状态。怎么都没有反应。。。
很莫名其妙,winsocket协议。
作者: shwonder    时间: 2010-7-20 16:51
谢谢云层老师!
我买了您的lr的新书

正题说回来,用的是http/html协议,还不是socket。在XP和2003的中文OS下都尝试过,不同的LR版本也尝试过。脚本使用的非常简单的Http/Html协议录制,几乎没有业务,就是一个登陆过程,在VUG中调试没有这个问题。但一放到Console中加压,在run状态下,问题就出来了。
其中负载pc机的CPU为酷睿2双核,内存为2GB。仅仅使用1个虚拟用户测试时,发现有一颗cpu占用接近100%,整个cpu使用保持在55%左右。
作者: shwonder    时间: 2010-7-20 21:22
我顶,一定不能沉下去!
作者: msnshow    时间: 2010-7-20 22:02
响应有多少
作者: shwonder    时间: 2010-7-20 22:10
原帖由 msnshow 于 2010-7-20 22:02 发表
响应有多少


谢谢msnshow版主。事实上,我甚至生成了一个空的VUgen脚本,然后放在controller上运行,依然出现这个问题。
作者: 云层    时间: 2010-7-20 22:15
.。。汗死空脚本你跑时间当然资源占用率高了。。。。。因为你在反复跑一个空脚本啊,速度有多快啊

脚本里面有think_time可以让脚本跑慢点,自然占用率就低了。。。
作者: shwonder    时间: 2010-7-20 23:26
原帖由 云层 于 2010-7-20 22:15 发表
.。。汗死空脚本你跑时间当然资源占用率高了。。。。。因为你在反复跑一个空脚本啊,速度有多快啊

脚本里面有think_time可以让脚本跑慢点,自然占用率就低了。。。



云层老师一句话,如醍醐灌顶!多谢多谢。

再次细细的实验了一番,证实我用了一个错误的脚本(仅仅是vuser_int函数中有http登录请求,而action()函数留空了,然后用这个脚本去验证新安装的负载环境的正确性。一般情况下,是不会生成这样无实际意义的测试脚本的。错就错在,俺做了一个偷懒的验证脚本,并且没有意识到LR这么强大的大拿运行效率之高!),然后在错误的基础上,又竟使用了一个空的脚本去验证问题。真是错上加错。

这个问题让我那远方搭环境的同事耗了一个工作日之多,真是让我汗颜而无脸见江东同事,如何对得起这软件从业人员的称谓啊。

再次感谢云层老师!

楼友们,此问题非LR的中文字符集兼容性问题,敬请留意。
作者: liuhaisheng2008    时间: 2010-7-21 08:48
学习了,支持下
作者: liujinkui    时间: 2010-12-14 15:27
回复 2# 云层

云层老师,我今天遇到2#问题,怎样解决?
作者: liujinkui    时间: 2010-12-14 15:35
替换wsrun32.dll 方式解决
作者: 云层    时间: 2010-12-14 18:57
替换wsrun32.dll只能对老版本用,新版本不行,注意乱码即可解决
作者: boymarco    时间: 2014-1-20 02:35
这个原理是什么情况啊?
现在LR11,运行socket脚本,wlrun.exe 和mmdrv.exe各占50% cpu,只启动了两个虚拟用户
作者: lucia_51    时间: 2015-4-16 12:48
学习中
作者: amelin    时间: 2020-1-10 10:01
LR 关闭情况,mmdrv.exe还开启进行(这个进行是C:\Program Files (x86)\HP\LoadRunner\bin 下的--mmdrv),并且服务器还有access。log日志 什么情况。。 楼主我按照你的要求弄了,也有think_time但是。。。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2