哪些因素导致CPU利用率高?为什么不提高CPU浮点运算能力?
扫描二维码
随时随地手机看文章
在这篇文章中,小编将对CPU中央处理器的相关内容和情况加以介绍以帮助大家增进对它的了解程度,和小编一起来阅读以下内容吧。
一、CPU利用率为什么超高
CPU出现于大规模集成电路时代,处理器架构设计的迭代更新以及集成电路工艺的不断提升促使其不断发展完善。从最初专用于数学计算到广泛应用于通用计算,从4位到8位、16位、32位处理器,最后到64位处理器,从各厂商互不兼容到不同指令集架构规范的出现,CPU 自诞生以来一直在飞速发展。
但是,我们会发现,有时候CPU的利用率出奇的高,这是为什么呢?
以下分别从CPU温度,CPU超线程,硬件配置,硬件驱动和待机方面分析。
1、CPU温度过高
如果CPU风扇散热不好,会导致CPU温度太高,使CPU自动降频,从而使CPU的性能降低。总之高温时CPU会自动将降低工作效率。
2、超线程
超线程导致CPU使用率占用高,这类故障的共同原因就是都使用了具有超线程功能的P4 CPU。据一些网友总结超线程似乎和天网防火墙有冲突,可以通过卸载天网并安装其它防火墙解决,也可以通过在BIOS中关闭超线程功能解决情况3、硬件配置不合理例如内存不足,当运行一些大型软件时,CPU的资源大部分耗在了虚拟内存的交换处理上。而电源功率不足,也会使CPU的性能难以发挥。还有,在购买CPU时,选的CPU核心频率不足是导致CPU的使用率高的最直接原因。
3、不完善的驱动程序
硬件的驱动程序没有经过认证或者是不合法的认证,会造成CPU资源占用率高。因大量的测试版的驱动在网上泛滥,造成了难以发现的故障原因。处理方式:尤其是显卡驱动特别要注意,建议使用微软认证的或由官方发布的驱动,并且严格核对型号、版本。
4、待机
经常使用待机功能,也会造成系统自动关闭硬盘DMA模式。这不仅会使系统性能大幅度下降,系统启动速度变慢,也会使是系统在运行一些大型软件时CPU使用率高。
二、为什么不提高CPU浮点运算能力
问:为什么 CPU 的浮点运算能力比 GPU 差,为什么不提高 CPU 的浮点运算能力?
「速度区别主要是来自于架构上的区别」是一个表面化的解释。对,架构是不同。但是这种不同是目前各个厂家选择的现状,还是由于本质的原因决定的?CPU 能不能增加核?GPU 那张图为什么不需要 cache?
首先,CPU 能不能像 GPU 那样去掉 cache?不行。GPU 能去掉 cache 关键在于两个因素:数据的特殊性(高度对齐,pipeline 处理,不符合局部化假设,很少回写数据)、高速度的总线。对于后一个问题,CPU 受制于落后的数据总线标准,理论上这是可以改观的。对于前一个问题,从理论上就很难解决。因为 CPU 要提供通用性,就不能限制处理数据的种类。这也是 GPGPU 永远无法取代 CPU 的原因。
其次,CPU 能不能增加很多核?不行。首先 cache 占掉了面积。其次,CPU 为了维护 cache 的一致性,要增加每个核的复杂度。还有,为了更好的利用 cache 和处理非对齐以及需要大量回写的数据,CPU 需要复杂的优化(分支预测、out-of-order 执行、以及部分模拟 GPU 的 vectorization 指令和长流水线)。所以一个 CPU 核的复杂度要比 GPU 高的多,进而成本就更高(并不是说蚀刻的成本高,而是复杂度降低了成片率,所以最终成本会高)。所以 CPU 不能像 GPU 那样增加核。
至于控制能力,GPU 的现状是差于 CPU,但是并不是本质问题。而像递归这样的控制,并不适合高度对齐和 pipeline 处理的数据,本质上还是数据问题。
以上便是小编此次想要和大家共同分享的有关CPU中央处理器的内容,如果你对本文内容感到满意,不妨持续关注我们网站哟。最后,十分感谢大家的阅读,have a nice day!