不论是什么系统,windows11还是Ubuntu、Centos、RedHat,其运行时都有一个运行模式的概念,其实这个运行模式就是CPU的性能模式,一般可以分为性能模式和省电模式两种,当然也有介于两者之间的一些中间模式,不过这里只讨论这个终点模式。
之所以有这个CPU运行模式这个概念,是因为现在的CPU都使用了睿频技术,什么是睿频技术呢,其实就是CPU可以根据实时任务的负载和功耗来动态调整CPU的运行频率;如果CPU的负载较轻(基本没啥运行任务),那么CPU将以低主频运行,而CPU负载增加后太会动态的提高CPU运行主频,这就是省电模式,该模式最大的优点就是顾名思义的省电,但是缺点就是运算速度慢,因为CPU的频率提升是有一定滞后性的,也就是说如果CPU的负载增加而CPU的频率提升是需要一点时间之后才会提升的,而如果是CPU负载波动较大的情况那么就会出现大量的高负载运行时间中CPU频率是以较低水平运行的,这样就会导致对于一些负载波动大的计算任务造成性能损失。
因而对于负载波动较大的计算任务来说,如果CPU是省电模式,虽然会省电,但是却会牺牲掉运算性能,虽然省电模式会根据任务负载动态提升CPU主频,但是由于其主频提升的滞后性会导致大量高负载任务运行在低主频的情况下。
为了使负载波动较大的计算任务可以获得最后的运算性能,我们需要把CPU模式手动设置为性能模式,这样就可以使CPU一直以最高主频运行,当然这样设置的话就会使CPU在大量空负载的情况下运行在高主频状态从而浪费掉一定的电力,但是为了保证负载波动较大的计算任务的运算性能这也是无法避免的。
注意,上面说的都是负载波动较大的计算任务,这是因为大多数的科学计算任务都是负载波动的,比如100毫秒的计算任务,以1毫秒的100%CPU使用率周期变成0%的CPU使用率,以此周期循环反复;如果是基本无负载波动的计算任务,比如100毫秒的计算任务一直都是以100%的CPU使用率运行,那么省电模式会一直使CPU频率保持在最高状态,从而和性能模式有同样的表现,但是要注意,在大部分的科学计算任务重都是负载波动较大的情况,因此手动将Ubuntu的CPU模式设置为性能模式是极为有必要的。
标签:负载,性能,主频,模式,Ubuntu,CPU,运行 From: https://www.cnblogs.com/devilmaycry812839668/p/18046571