牙膏厂的烂活:Raptor Lake上的Fast Throttle功能
众所周知,CPU都有【温度墙】机制:一旦温度触及某个阈值,就会触发一系列有助于降温的操作,最简单的就是降频降电压(频率和电压是对应的)。
牙膏也有【温度墙】,叫TjMax(Tjunction Max),在某些不怕死的平台上还可以给TjMax设置偏移量,从100℃改到115℃。
不过这个【温度墙】有个缺点:它检测的是CPU里面最热的部分【热点】,一旦热点到达TjMax,就触发全局的降频降压。实际上CPU内部温差相当大,某个核心温度到达TjMax,其它核心可能还差很多。比如现在的大小核,温差能有10℃甚至更多,某个大核100℃了,别的大核可能90℃,小核可能只有80℃出头。如果功耗还有余量,温度较低的那些核心其实没必要降频降压,但热点温度已经到了,没到的也只能跟着降。
牙膏厂也知道原来的温度墙机制效率不好,所以他们搞了个【分核心的热量限制】(per core thermal throttle)机制:Fast Throttle
这个Fast Throttle的原理是:一旦某个核心的温度超过了既定阈值,该核心的内部时钟信号将按一定比例停发,亦即有些周期会停机;温度超过阈值的幅度越大,停机的周期越多。尽管外部看起来频率没变(外部时钟信号还按原来的频率发),但内部的【有效频率】其实下降了。
如果你对牙膏比较熟悉,可能觉得Fast Throttle似曾相识:没错,它和牙膏厂的另一个烂活,CEP(Current Excursion Protection),使用了相同的内部停机机制。
但是,如果你上网搜Fast Throttle,大概只会搜到后续酷睿Ultra系列(还是笔记本CPU)要增加Fast Throttle的新闻,以及仅有的一个讲13、14代牙膏上的Fast Throttle的文章。13、14代牙膏(B0步进)确实具备这个Fast Throttle功能,但基本处于不生效的状态(Fast Throttle的阈值和TjMax一样)。
这个听起来很有效率的【分核心温度墙】为何没有在现有的牙膏上真正被启用呢?答案非常搞笑:虽然过热后降低了(有效)频率,但没有给降频的核心同步降低电压(电压还是对应外部频率的),导致核心即使降频也不能有效减少发热,温度根本下不来😂
14代牙膏可以修改Fast Throttle的阈值,如果把它改到比TjMax小很多的值,会观察到非常搞笑的现象:温度超过Fast Throttle阈值后还会继续上升,然后CPU有效频率一路下跌,性能损失狗看了都摇头。
为什么会整成这样?我猜测和正式版Raptor Lake取消了DLVR(Digital Linear Voltage Regulator)有关。Raptor Lake原本计划在CPU内部设置DLVR向不同模块(大核、小核、环形总线)分派不同的电压,正式版取消DLVR,CPU各模块还是和原来一样共用相同的电压。Fast Throttle虽然让个别核心降频了,但(可能)还存在没降频的核心,电压只能按没降频的来。
如果DLVR健在,我认为Fast Throttle应该会走CEP:对于过热的核心先分配较低的电压,然后利用欠压触发CEP实现内部降频。毕竟触发CEP是真的能降功耗降温。
我改行到计算机行业干了六年,是真真切切体会到了什么叫草台班子。就说现在的这些CPU(超标量处理器),理论层面早没突破了,来回来去就那几把刷子,比拼的其实是【取舍的艺术】以及【不要太蠢】。
Raptor Lake如果能实装DLVR,可能是能把大核频率往高了怼,毕竟大核应该是按高频耐电设计的电路,而且配合CEP、Fast Throttle这些机制也可以进一步控制频率和温度。问题是DLVR没了,细调电压的条件没有了,大核怼高频会让全局电压升高,就不能随便搞了,得有所舍弃。
13、14代如果能在现有规格基础上,大核降低200~300MHz、小核降低100~200MHz的频率,可能一切安好。然而牙膏厂利令智昏,既要又要,沦为笑柄😂
14代为什么不用DLVR
littleeva (小eva) 在 ta 的帖子中提到:
众所周知,CPU都有【温度墙】机制:一旦温度触及某个阈值,就会触发一系列有助于降温的操作,最简单的就是降频降电压(频率和电压是对应的)。
牙膏也有【温度墙】,叫TjMax(Tjunction Max),在某些不怕死的平台上还可以给TjMax设置偏移量,从100℃改到115℃。
不过这个【温度墙】有个缺点:它检测的是CPU里面最热的部分【热点】,一旦热点到达TjMax,就触发全局的降频降压。实际上CPU内部温差相当大,某个核心温度到达TjMax,其它核心可能还差很多。比如现在的大小核,温差能有10℃甚至更多,某个大核100℃了,别的大核可能90℃,小核可能只有80℃出头。如果功耗还有余量,温度较低的那些核心其实没必要降频降压,但热点温度已经到了,没到的也只能跟着降。
……
因为晶片和13代的没区别啊,电路都是一样的,DLVR的部分压根就没整利索😂
DingKingWoii (崑崙酒徒) 在 ta 的帖子中提到:
14代为什么不用DLVR