为什么我的进程只消耗 5% 的处理器功率?
不确定这是否是这个问题的适当位置,但它似乎与线程和系统资源等相关。
当我有 3 个不同的进程运行时,为什么我的任务管理器显示系统空闲进程正在使用 90% 以上的 CPU 功率!?!?
是因为 I/O 瓶颈吗?
例如,如果我进行 SVN 结账,清空回收站,同时浏览网页,为什么系统空闲进程为 97%,而其他进程各为 1% 左右? 他们似乎实际上都没有走得很快。
Not sure if this is the appropriate place for this question, but it seems related to threading and system resources and all that.
Why Does my Task Manager show that the System Idle Process is using 90%+ of the CPU power when I have 3 different processes going!?!?
Is it because of I/O bottlenecks?
For example, if I do an SVN checkout, and empty my recycle bin, and browse the web at the same time, why is the System Idle process at 97%, and the other processes around 1% each? None of them seem to actually be going very fast.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
大多数进程正在等待磁盘或网络操作完成,或者等待用户输入。
您可能认为您拥有快速的磁盘或网络连接,但与内存/CPU 相比,这就像步行到最近的图书馆,在目录中查找一本书并在书架上找到它,而不是手中已经有这本书。
这就是为什么您要为高性能服务器上的 10,000 rpm 和 15,000 rpm scsi 驱动器(对于 SAN 甚至更多)支付数千或美元的原因。
Mostly the processes are waiting for disk or network operations to complete, or waiting for user input.
You might think you have a fast disk or network connection, but compared to memory/cpu it's like walking to the nearest library, looking up a book in the catalog and finding it on the shelf vs already having the book in your hand.
This is why you pay thousands or dollars for 10,000 and 15,000 rpm scsi drives (or even more for SANs) on high performance servers.
我不能肯定地说。 但我想说 I/O 瓶颈将是其中很大一部分。 事实上,我认为您描述的任何任务都不会非常占用 CPU 资源。
现在,尝试将原始 AVI 文件重新编码为 DIVX 格式,同时在 Maya 中渲染 3D 动画,您的 CPU 应该非常繁忙。
I can't say for sure. But I'd say I/O bottlenecks would be a large part of it. In fact, I wouldn't imagine any of the tasks you described would be very CPU intensive.
Now, try to re-encode a raw AVI file into DIVX format while simultaneously rendering a 3D animation in Maya, and your CPU should be plenty busy.
这实际上取决于您的流程正在做什么。 如果他们受 IO 约束,那么他们很可能大部分时间都在等待。
如果它们是等待用户输入的 winforms 应用程序,那么它们就会坐在那里,什么也不做,等待输入。
It really depends on what your processes are doing. If they are IO bound, then there's a good chance that they're sitting and waiting most of the time.
If they're winforms apps that wait for user input, then they sit there, doing nothing, and waiting for input.
SVN 签出和回收站清空都是非常繁重的磁盘活动,对 CPU 的需求不大,而 Web 浏览的 CPU 使用率非常高(例如,渲染页面时会出现峰值,但完成后成本非常低)。
如果您希望 CPU 保持高利用率,请执行几乎完全基于 CPU/内存的操作,例如 Folding@Home。
SVN checkout and recycle bin emptying are both very heavy disk activities with not much demand on the CPU, and web browsing is very spiked in terms of CPU usage (spikes when rendering pages, for example, but costs very little once that is done).
If you want to see your CPU sustain high utilization, do something that is almost purely CPU/memory based, like Folding@Home.