CPU温度与封装有什么关系?如何提升CPU运行速度?
2022-12-25
来源:FJH00
我们常用鲁大师测试电脑温度,CPU温度、显卡、硬盘、主板等硬件温度都会显示出来。但是一些细心的玩家注意到了,CPU温度通常显示3个数。CPU温度、CPU核心温度、CPU封装温度,为什么会有3个温度,分别代表什么呢?
要了解这3种温度,首先要弄清楚CPU的结构。我们知道CPU是单晶硅制成的,当这些晶体管集成电路制作完成后。必须与外界隔离,以防止空气中的杂质对芯片电路的腐蚀而造成电气性能下降。这就需要下一步操作—封装。
封装对于芯片来说是必须的,也是至关重要的。通常用绝缘的塑料或陶瓷材料打包,我们看到有人把CPU开盖之后,亮晶晶的那块就是封装着的CPU核心。其实真正的CPU核心我们是不可能看到的,看到的只是它的封装罢了。
封装之后还不算完成,CPU要散热,上面要压散热器,而陶瓷受压容易破裂,运输也容易损坏,这就需要保护起来。CPU会在外部加上一个金属保护罩,就是我们见到的带有芯片代号等信息的金属壳,里面才是CPU的核心。
这下我们知道了,CPU从下到上依次是核心、封装、金属保护壳,对应的就是核心温度,封装温度,cpu温度了,温度是从核心一层层传递到外壳的,然后由散热器把热量散发掉。而传递的过程中,热量会有损失,这也是核心温度高于表面温度的原因。
二、使用大页技术提升CPU运行速度
现代操作系统,基本上都会使用一个叫换页/交换文件的技术:内存空间有限,但进程越来越多,对内存空间的需求越来越大,用完了怎么办?于是在硬盘上划分一块区域出来,把内存中很久不用的数据转移到这块区域上来,等程序用到的时候,触发访问异常,再在异常处理函数中将其从硬盘读取进来。
可以想象,如果程序访问的内存老是不在内存中,而是被交换到了硬盘上,就会频繁触发缺页异常,那程序的性能肯定大打折扣,所以减少缺页异常也是提升性能的好办法。
从虚拟地址寻址真实的物理内存,这个过程是CPU完成的,具体来说,就是通过查表,从页表-》一级页目录-》二级页目录-》物理内存。
页目录和页表是存在内存中的,毫无疑问,内存寻址是一个非常非常高频的事情,时时刻刻都在发生,而多次查表势必是很慢的,有鉴于此,CPU引入了一个叫TLB(Translation Look- aside buffer)的东西,使用缓存页表项的方式来减少内存查表的操作,加快寻址速度。
默认情况下,操作系统是以4KB为单位管理内存页的,对于一些需要大量内存的服务器程序(Redis、JVM、ElascticSearch等等),动辄就是几十个G,按照4KB的单位划分,那得产生多少的页表项啊!
而CPU中的TLB的大小是有限的,内存越多,页表项也就越多,TLB缓存失效的概率也就越大。所以,大页内存技术就出现了,4KB太小,就弄大点。大页内存技术的出现,减少了缺页异常的出现次数,也提高了TLB命中的概率,对于提升性能有很大的帮助。
在一些高配置的服务器上,内存数量庞大,而CPU多个核都要通过内存总线访问内存,可想而知,CPU核数上去以后,内存总线的竞争势必也会加剧。于是NUMA架构出现了,把CPU核心划分不同的分组,各自使用自己的内存访问总线,提高内存的访问速度。
I/OCPU和内存都够快了,但这还是不够。我们的程序日常工作中,除了一些CPU密集型的程序(执行数学运算,加密解密,机器学习等等)以外,相当一部分时间都是在执行I/O,如读写硬盘文件、收发网络数据包等等。
更多信息可以来这里获取==>>电子技术应用-AET<<