社区
C++ 语言
帖子详情
运行程序时,cpu的使用率突然降到很低的问题
开心海贼
2012-05-14 06:08:57
运行程序,刚开始时cpu使用率正常一直稳定在50%以上,不过运行10多分钟以后,使用率开始下降,且下降很快,过了2分钟降到2%~9%,并且以后一直维持这个水平,害得我程序跑了一宿,还没跑出结果。然后又调试了一下午,仍然没有结果。到底什么原因?请教下各位。
...全文
5273
18
打赏
收藏
运行程序时,cpu的使用率突然降到很低的问题
运行程序,刚开始时cpu使用率正常一直稳定在50%以上,不过运行10多分钟以后,使用率开始下降,且下降很快,过了2分钟降到2%~9%,并且以后一直维持这个水平,害得我程序跑了一宿,还没跑出结果。然后又调试了一下午,仍然没有结果。到底什么原因?请教下各位。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
开心海贼
2012-05-16
打赏
举报
回复
怎么使用log,可以提供些资料么?[Quote=引用 4 楼 的回复:]
cpu占用率高,通常意味着你的CPU在大量地进行计算,如循环部分。占用率低意味着你的程序在进行输入输出,大部分在等待资源,检查一下你的程序结构,必要时打印log以分析原因。我不认为楼上的回答回答在点子上。
[/Quote]
赵4老师
2012-05-15
打赏
举报
回复
检查是否资源泄漏的办法之一:
在任务管理器 进程 查看 选择列 里面选择:内存使用、虚拟内存大小、句柄数、线程数、USER对象、GDI对象
让你的程序(进程)不退出,循环执行主流程很多遍,越多越好,比如1000000次甚至无限循环,记录以上各数值,再隔至少一小时,越长越好,比如一个月,再记录以上各数值。如果以上两组数值的差较大或随时间流逝不断增加,则铁定有对应资源的资源泄漏!
忘世麒麟
2012-05-15
打赏
举报
回复
[Quote=引用 2 楼 的回复:]
自增还有位操作?引用 1 楼 的回复:
优化一下程序,使用const等修饰词,在for,while等循环语句中使用位操作,而不是自增或者自减操作.
[/Quote]
将自增的变量化为二进制,自增操作使用位操作,等同于++(--).
muyi66
2012-05-15
打赏
举报
回复
观察机器运行状态,如果CPU占用率降低的同时硬盘指示灯长亮,则多半是你的机器耗尽了内存,导致系统处在不停的内存页面交换状态。
耗尽内存有可能是这些:你申请了太大内存,以至于机器不能提供足够的内存给你使用,不得不靠虚拟内存来提供空间;你的程序里发生内存泄露,而且很严重。
morebread
2012-05-15
打赏
举报
回复
个人感觉可能是死锁了或者进入某个死循环。
这种现象感觉LZ应该好好查一下代码,运行的时候打一下log排查一下
baichi4141
2012-05-15
打赏
举报
回复
[Quote=引用 6 楼 的回复:]
其实我的想法是内存里的资源经常性的换进换出,由此影响cpu的使用率,于是程序动态申请较大的空间,尽量避免内存上的操作,通过测试,cpu使用率》50%的时间可以持续到15分钟左右,可是往后又变为2%~9%,首先说明一点,动态申请的空间绝对够用。于是不应该出现内存的大量操作。很是费解,有木有其他可能原因?引用 4 楼 的回复:
cpu占用率高,通常意味着你的CPU在大量地进行计算,如循环部分。占……
[/Quote]
内存是操作系统负责管理的,你动态申请超大的空间,只意味着内存被更频繁的置换
开心海贼
2012-05-15
打赏
举报
回复
[Quote=引用 11 楼 的回复:]
引用 6 楼 的回复:
其实我的想法是内存里的资源经常性的换进换出,由此影响cpu的使用率,于是程序动态申请较大的空间,尽量避免内存上的操作,通过测试,cpu使用率》50%的时间可以持续到15分钟左右,可是往后又变为2%~9%,首先说明一点,动态申请的空间绝对够用。于是不应该出现内存的大量操作。很是费解,有木有其他可能原因?引用 4 楼 的回复:
cpu占用率高,通常意味着你的CPU在大量……
[/Quote]
我晕了,打了半个小时的字,点了个引用,全没有了,犯2了啊,想哭,感觉回复方式设置的太不合理了。
好郁闷呀。不管了,你能不能解释下你说的这句话什么意思,怎么频繁置换。
开心海贼
2012-05-15
打赏
举报
回复
[Quote=引用 11 楼 的回复:]
引用 6 楼 的回复:
其实我的想法是内存里的资源经常性的换进换出,由此影响cpu的使用率,于是程序动态申请较大的空间,尽量避免内存上的操作,通过测试,cpu使用率》50%的时间可以持续到15分钟左右,可是往后又变为2%~9%,首先说明一点,动态申请的空间绝对够用。于是不应该出现内存的大量操作。很是费解,有木有其他可能原因?引用 4 楼 的回复:
cpu占用率高,通常意味着你的CPU在大量……
[/Quote]
我晕了,打了半个小时的字,点了个引用,全没有了,犯2了啊,想哭,感觉回复方式设置的太不合理了。
好郁闷呀。不管了,你能不能解释下你说的这句话什么意思,怎么频繁置换。
mars_man
2012-05-15
打赏
举报
回复
应该是在某个环节阻塞,而这个阻塞不可退出。
再者就是这个阻塞是可退出的,不过长期大量时间消耗在这上面,比如循环阻塞,阻塞时间过长等等。
mars_man
2012-05-15
打赏
举报
回复
++[Quote=引用 8 楼 的回复:]
说明你死循环了
[/Quote]
qq120848369
2012-05-14
打赏
举报
回复
说明你死循环了
liuwons
2012-05-14
打赏
举报
回复
貌似现在的输入输出系统都不太占用CPU时间了,除非程序的往后计算依赖输入输出的执行,LZ可以查看下是不是这样的。。。
[Quote=引用 4 楼 的回复:]
cpu占用率高,通常意味着你的CPU在大量地进行计算,如循环部分。占用率低意味着你的程序在进行输入输出,大部分在等待资源,检查一下你的程序结构,必要时打印log以分析原因。我不认为楼上的回答回答在点子上。
[/Quote]
开心海贼
2012-05-14
打赏
举报
回复
其实我的想法是内存里的资源经常性的换进换出,由此影响cpu的使用率,于是程序动态申请较大的空间,尽量避免内存上的操作,通过测试,cpu使用率》50%的时间可以持续到15分钟左右,可是往后又变为2%~9%,首先说明一点,动态申请的空间绝对够用。于是不应该出现内存的大量操作。很是费解,有木有其他可能原因?[Quote=引用 4 楼 的回复:]
cpu占用率高,通常意味着你的CPU在大量地进行计算,如循环部分。占用率低意味着你的程序在进行输入输出,大部分在等待资源,检查一下你的程序结构,必要时打印log以分析原因。我不认为楼上的回答回答在点子上。
[/Quote]
开心海贼
2012-05-14
打赏
举报
回复
没有,cpu温度不高25度左右,内存使用率一直很高,从程序开始一直到结束,内存使用一直很高,这是问题限定的,从程序开始10分钟一直不影响cpu使用率。资源卡锁,你是否介绍详细些?[Quote=引用 3 楼 的回复:]
有没有可能是资源卡锁了。。。
或者你的CPU温度太高了?
或者内存使用率太高?
[/Quote]
liangbch
2012-05-14
打赏
举报
回复
cpu占用率高,通常意味着你的CPU在大量地进行计算,如循环部分。占用率低意味着你的程序在进行输入输出,大部分在等待资源,检查一下你的程序结构,必要时打印log以分析原因。我不认为楼上的回答回答在点子上。
liuwons
2012-05-14
打赏
举报
回复
有没有可能是资源卡锁了。。。
或者你的CPU温度太高了?
或者内存使用率太高?
开心海贼
2012-05-14
打赏
举报
回复
自增还有位操作?[Quote=引用 1 楼 的回复:]
优化一下程序,使用const等修饰词,在for,while等循环语句中使用位操作,而不是自增或者自减操作.
[/Quote]
忘世麒麟
2012-05-14
打赏
举报
回复
优化一下程序,使用const等修饰词,在for,while等循环语句中使用位操作,而不是自增或者自减操作.
cpu
占用突然到百分百又降下去_
cpu
使用率
忽高忽
低
2014-01-08 14:47:46最近一朋友启动word之后电脑
运行
速度变慢从而电脑
cpu
占用率过高的情形,那么要怎么办呢?现在就跟小编学习一下Win7中
运行
word2003
CPU
使用率
过高怎么办吧。2015-04-03 18:34:49
CPU
使用率
其实就是你
运行
的
程序
占用的
CPU
资源,表示你的机器在某个
时
间点的
运行
程序
的情况。
使用率
越高,说明你的机器在这个
时
间上
运行
了很多
程序
,但是如果
cpu
...
CPU
负载高但
CPU
使用率
低
的原因及解决办法
因此,当系统中有大量正在等待IO的进程
时
,会导致高负载
低
CPU
使用率
的情况。在Linux系统中,当我们观察系统的性能
时
,经常会遇到一种情况:
CPU
负载很高,但是
CPU
使用率
却很
低
。如果系统中有大量的
低
优先级进程,而高优先级进程需要等待,那么系统的负载可能会增加,但是
CPU
使用率
却不高。通过以上的方法,我们可以更好地理解高负载
低
CPU
使用率
的情况,并针对性地采取一些优化措施来提高系统的性能和响应能力。并行处理:对于多核处理器的系统,可以通过并行处理的方式,将任务分配给多个核心同
时
执行,提高系统的处理能力。
Linux性能优化实战笔记 : 06
CPU
使用率
很高,但每个进程的
使用率
很
低
的一个原因
副标题:系统的
CPU
使用率
很高,但为啥却找不到高
CPU
的应用? 引自https://time.geekbang.org/column/140 碰到常规
问题
无法解释的
CPU
使用率
情况(比如top 1里显示的
CPU
使用率
很高,但每个进程的
使用率
很
低
)
时
, 首有可能是短
时
应用导致的
问题
, 比如: 1. 应用里直接调用了其他二进制
程序
, 这些
程序
通常
运行
时
间比较短,通过top等工具也不容易发...
cpu
使用率
(
cpu
使用率
很
低
最大频率很高)
CPU
使用率
占多少算是正常 先这样说吧,如果你玩的是那种对显卡要求不高的游戏,而且你在网吧用的机器的显卡足够强大的话,你就是4开5开
CPU
占用也不会很多的 但是你如果看的个人网页就不一样了,现在很多网页或者个人的QQ空间元素很多的,图片 视频 FLASH 音乐 文字等等这些多媒体的文件处理要比游戏占用更多的
CPU
,加...
CPU
使用率
低
内存
使用率
高
电脑
时
不
时
的卡死,尤其是你有点什么事情想做的
时
候,真的是要疯了。 打开资源管理器一看,
CPU
使用率
只有百分之十几,物理内存
使用率
却高达九十几!这是啥原因呢?之前还真没想过这个
问题
。现在整理一下,知道
问题
的来龙去脉。 首先看看进程,目前有六七十个进程在占用资源,其中包括大户谷歌浏览器、360等等,而且重要的是,公司电脑还是2G内存,跑WIN7旗舰版真的勉强了!!! 现在
C++ 语言
65,176
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章