关于天玑8400的能效好,再次,再次,再次科普一下SoC的功耗和性能之间的关系到底怎么来的,为什么会有和大家广义上理解的不一样的地方。
在几年前,我科普过一次功耗的数学表达方法,如图1所示
理想芯片功耗大概可以认为由2部分构成:
【动态功耗】和【漏电功耗】,而动态功耗可以进一步细分为开关功耗和短路功耗
★【开关功耗】就是处理器的逻辑门翻转的功耗,可以表达成大家熟悉的P=C*V²f
C是等效电容,V是电压,f是频率,这个小学二年级要学,放下不表。
★【短路功耗】其实可以并入动态功耗,他是输入信号上升和下降期间(也就是变化期间)的由短路电流所消耗的能量。
最后就是漏电功耗,我们也叫【静态功耗】,也就是芯片待机状态下所产生的的功率消耗,主要来源于处理器内部的泄漏电流,芯片晶体管数量越多,面积越大,这个功耗越高。
讲到这里大家可能比较难理解这种抽象的东西,我们就换一个比喻。
如果我们把SoC处理数据,比作车辆搬运货物。
更大的处理器(核心)面积和晶体管数量,就是更大的车。
更高的处理器频率,就是车辆更高的行驶速度。
旗舰处理器可以比作是重载卡车,他们面积大(晶体管数量多),而且速度可以跑的非常快。(频率高)
中高端处理器可以比作普通卡车,面积小一些(晶体管数量少),而且速度往往没有那么快(频率没有那么高)
现实世界中我们知道,如果你此时只需要一天之内把很少的东西搬运到目的地,开重载卡车是很不划算的,因为开一趟他的基础油耗就非常高,停那发动机空转都很耗油。
这就是旗舰SoC(或者说核心也可以)更大的面积,更多的晶体管带来的问题,这也是为什么在功耗敏感的领域,处理器往往是大核+小核的设计,小核负责轻载任务,他们本身静态功耗低,在跑一些轻任务的时候比大核更加省电。
但是如果你需要半天时间,就把很多东西搬运到目的地,也就是我们说的重载任务,开普通卡车就非常不划算,因为你运送的东西少,你可能需要开非常高的速度,才能在指定时间内把很多东西来回拉几趟送到目的地,这时候你的油耗(功耗)可能就爆表了,不如直接重卡一次拉完。
那如果你油门踩到底开普通卡车都拉不完,那你手机就卡了。
如何根据实际场景需求,灵活的设计你的车队(SoC,或者核心集群)组成,来满足不同的预设任务下最低的油耗(功耗),是处理器设计厂商的核心能力之一。
中端处理器由于面积更小,他的漏电流可以更小,本底的漏电功耗可以更低,因此在任务负载不重的时候,反而会因为小车省油达到最好的负载效果,而高端处理器往往背负着探索最强性能(卡车最大载重和速度)的目的,一方面是大卡车在重负载时反而可能比普通卡车跑满负载更省电(全大核,或者说砍小核的趋势),另一方面是大家要赛博斗蛐蛐,导致顶级旗舰各个都在宣传自己晶体管多,但是如何平衡各等级各需求的处理器的设计,反而考验厂商的能力。
很多媒体老师会赛博斗蛐蛐一样,把所有的车队都拿去跑重负载,得出一个简单的结论,就是我之前视频说的参数不关联,不考虑具体的技术原理,不理解技术本质导致的。
极客湾实测8400和8Gen3就是这个例子,可以看到图3,8Gen3和9300作为旗舰处理器,在高性能区间一骑绝尘,但是因为面积大,静态功耗较高,在低功耗区间可以被中端处理器追上。
当然,实际情况会比我说的要复杂许多,当我们综合手机的热设计热承载,实际的功耗曲线(并不是现在用软件测试的1秒采样一次的玩意),以及对应的任务需求和资源调度的时候,会在非常宽广的性能包线内找到各自的位置。
我的建议是,用户们购买决策前,好好评估一下自己的性能需求,到底平常要干什么,什么区间是最适合你的,为什么,来正确理解自己购买到的产品,而不是为了买而买,最后不知道买到了啥。