朋友吃鸡时反映,他的笔记本CPU占用率总是100%,这是什么原因呢?笔者这里为其解释了CPU的工作原理,同时分析了游戏时CPU占用率虚高应该怎么解决。最终,重装了系统之后,他的笔记本被修好了。
朋友玩吃鸡时的悲剧 CPU占用率虚高导致电脑卡顿
今年后半年大热的《绝地求生:大逃杀》,笔者一开始对这款游戏嗤之以鼻,因为我早就玩过类似的游戏了。记得《绝地求生:大逃杀》推出之前,求生、大逃杀类的游戏有这么两款非常出名,分别是《DAY-Z》和《H1Z1》。这两款游戏刚推出的时候,玩家数量也不少,《DAY-Z》当时的总玩家数大概在100万人左右,《H1Z1》则超过了300万人。而现在《绝地求生:大逃杀》的推出,直接将其他求生类射击游戏压在底下,这款游戏的日活就有80-100万人,可见其热度非常高。
为了赶赶时髦,笔者现在也入了吃鸡这款游戏,和朋友天天晚上奋战,体验体验这款游戏的魅力。
不过,笔者那位朋友的电脑总是会出点小问题,在吃鸡的关键节点,我要么听到的是YY上断断续续的报点声,要么听到的是他抱怨电脑卡顿严重等问题,也正是因为这些事,导致我们总是在快要吃鸡时被他给坑了。
为了吃鸡我们也是拼了(其实我是躺赢)
笔者一开始以为是他的电脑配置不行,所以我总是建议他换电脑硬件。结果他发给我他现在用的电脑配置图,Intel Core i5 6500处理器+GTX 1060 6G显卡+8G 内存,明明电脑配置是够的,怎么他的电脑在玩吃鸡游戏的时候会突然卡顿呢?游戏优化再不好,也不会出现这种现象吧。
随后我让朋友在玩吃鸡的时候打开资源管理器,看看CPU占用率。从资源管理器显示的来看,在运行游戏的时候该CPU的占用率一直保持在100%。我就觉得他的电脑肯定在某些部分出现了问题,使得CPU一直被占满。
既然CPU占用率出现了“Bug”,那么笔者就从这些方面开始排查,看看他的电脑到底在哪些方面出现了问题,使得占用率虚高。
CPU是怎么工作的?
我们都知道CPU是电脑的大脑,它可以控制管理整个电脑的运行。根据百度百科,CPU也称中央管理器,这块芯片的内部其实是一块超大规模的集成电路,它的功能主要是解释计算机指令以及处理计算机软件中的数据。CPU内部其实有这么几块区域,包括运算器,全称算术逻辑运算单元,也叫ALU;还有高速缓冲存储器(Cache),以及实现运算器和存储器联系的数据、控制及状态的总线(Bus)。从物理构造来看,CPU的内部由物理部件、寄存器和控制部件组成。其实,CPU的内部构造一直在不断改进中,可增加的区域、模块越来越多。这里只是说了一些主要构造,也就是说,CPU工作时,所需的部件就是那么几块。
Haswell核心架构图(图片来源:网络)
CPU在工作的时候,一般会先进行指令的提取。指令的提取是从高速存储器中提取的,随后CPU会将将指令放入指令寄存器,对指令译码。编码的过程,在解码阶段,指令被拆解为有意义的片段,通过一种算法,使指令形成CPU能读懂的语言。提取和解码阶段之后,就是执行指令的阶段了。该阶段中,ALU等计算部件就开始工作了,它会将指令进行输入输出,最终得出一个结论。那么,结论得出后该怎么保存呢?CPU会通过写回,以一定格式将执行阶段的结果简单的存至寄存器。
CPU占用率是什么?
说到系统应用为啥对CPU占用率那么高,我们先搞清一个问题:CPU占用率指的是什么?
资源管理器中显示的CPU利用率
当CPU占用率为100%的时候,是占满了CPU的Time。如果将CPU比作一个人,那么应用就相当于你的领导,领导给你安排了100%的任务,占据了你的所有时间,使你不得不完成这些工作。如果CPU占用率一直处在100%,那就说明领导安排的这个任务已经处在死循环状态,你无法解决它,只能一直重复工作着。当然,人可以选择放弃,芯片则不会。
但是呢,任务占用了你的所有时间,并不代表这些任务已经占用了你的脑容量。CPU在处理这些应用的指令时,也和人脑一样,只有一部分晶体管在运作,大部分晶体管平时都保持在闲置状态。你想想,如果CPU内部的所有晶体管都在同时运作,虽然计算速度飞快,但是高负荷运算最终带来的肯定是晶体管的提前退休。
所以,CPU占用率高的原因,就是某些应用希望能让CPU利用自己全部的时间来处理它们的指令。在这种情况下,其他应用就会被晾在一边了。游戏亦是如此,游戏中的很多指令确实会占用CPU不少时间,这个时候CPU只能为游戏“打工”,而不能为其他应用程序干活。
吃鸡这款游戏也会占用CPU不少时间,因为游戏中同屏人数一多,考验CPU的性能时候就到了,这时候CPU占用率高也可以理解。而且游戏这类占用的硬件资源可不止CPU,内存、显卡等硬件都会保持在高占用的状态。可能因为游戏内的大部分运算都是放在内存上进行的,吃鸡对内存的要求比CPU还高。由此我们可以看出,如果硬件性能不足,或者电脑就会卡顿、死机。
看到这里有人会想,如果想解决CPU占用率过高的问题,我将这些应用、游戏关掉不就行了。但是也有人发现,即使关闭了这些占用CPU时间的程序,CPU依旧还在为某些程序辛苦地工作,这是什么情况呢?
游戏时CPU占用率莫名过高 解决办法有很多
笔者这里总结了一些解决游戏时CPU占用率虚高问题的办法。当然,笔者也不是技术宅,没有办法从技术的角度来解决该问题,只能根据平时实验出来的经验做个“土方子”。
1.目前大部分用户的笔记本电脑都使用的是Win10操作系统,该系统可以调整电源计划,将电源计划直接还原到默认即可。笔者估计这应该是Win10早期的Bug,现在的Win10应该没有这种CPU占用率虚高的问题了。
2.大部分人遇到的CPU占用率过高的情况都是和系统有关,Win10操作系统的各种功能都有可能导致CPU占用率过高...这个问题需要微软自己去多做优化,同时我们需要不停地去关闭可能占用CPU的系统程序。
3.现在各种大型游戏对CPU的要求越来越高,运行大型游戏时CPU本来占用率就会很高,如果一直保持在100%的话,你需要检查这么几个常见问题:第一,检查显卡、声卡等系统驱动是否兼容,安装一个稳定的驱动;第二,查看资源管理器里的后台进程,进程如果不显示哪个程序占用率过高,那么多数情况可能是系统的问题,可以使用第三方的管家等软件清理一些后台进程(虽然这些软件也会占用CPU时间)。要是因为系统问题导致CPU占用率一直居高不下,建议重装纯净版系统;第三,可能是病毒、流氓软件等在干扰电脑的正常工作,需要查杀一下。
4.如果以上这些办法都不行,估计是硬件的问题,你需要换一台电脑,或者换一块CPU了。
电脑硬件总有老化的时候,CPU也总有累的时候。人会自主休息,缓解自己的疲劳,CPU则不会。如果让CPU一直这么工作,它也会有犯迷糊的时候,明明没有应用找它干活,它却像“回光返照”一样,一直保持占用率100%。
CPU占用率示例
此外,网上还有各种从系统内部寻找CPU占用率虚高的方法,喜欢研究电脑的可以从网上查阅相关教程。
为了让朋友不再因为电脑卡顿而坑我们吃鸡,笔者尝试了诸多方法,重装了系统之后,他的电脑终于恢复了正常。据朋友说,他之前找了个熟人给他装了一个非纯净版系统,他一开始觉得这个系统没啥问题,就没想再换了,谁曾想现在玩游戏出了各种问题。朋友说,他可能今后会和那位熟人“友尽”了。
网友评论