最近intel 縮缸閃退的問題相信搞得大家人心惶惶,但卻又不知道怎麼預防
我覺得需要來講講各項選項的用途跟差異以及正確觀念,不過文筆不是很好請見諒(文章超長,請根據自己耐心再決定是否往下看)
首先我們有必要先了解CPU預設時脈跟預設電壓的boost行為怎麼運作的
Intel 每一顆CPU在出廠的時候都內建了一張倍頻 to VID電壓的對應表,跟CPU自身體質有關
華碩大名鼎鼎的體質預測SP(Silicon Predition)就是以此為依據做加權算出的分數。
它定義了CPU在使用某個倍頻時,向主機板供電模組(以下稱VRM) 索取的目標電壓值
這張電壓表寫死在CPU內部且不可更改,Intel在工廠內會預先測試CPU的體質,對不同體質的CPU給出針對的VID電壓設定,體質好的CPU跑相同倍頻的VID低,體質不好的CPU跑相同倍頻的VID高。
以下是三顆14900KS的大核vid
然後現在的CPU是大小核的關係,所以大核、小核、Ring都各自有VID對應表,不過實際CPU Die是吃同樣的電壓所以索取的VID會是三者中取最高值。
上面講完VID的意義之後就要接著來談實際面(畢竟理論終究還是理論)
VID最後也不過是個數字訊號,因為主機板供電模組出來包含電路板導線等等在內所有物質
基本都具有電阻,一定會有不可避免的掉壓
而且實際上每張主機板的供電用料、板層數,布線都不一樣,也就代表掉壓值根本都不一樣。
就連同一型號主機板不同個體也像CPU有個體差異,所以intel為了讓大多數主機板都有相似的掉壓行為就定義了一個虛擬電阻,讓不同主機板的VRM都能根據這個虛擬電阻的值進行模擬掉壓。
這個虛擬電阻稱為VRM Loadline,也就是大家所知道的防掉壓,Intel的標準值是1.1毫歐(mOhm)
假設CPU今天向VRM索取的電壓值為1300mv,如果實際負載電流100A,那透過公式計算壓降就是100*1.1=110mv,1300mv-110mv 最後進入CPU的實際電壓就是1190mv。
大家在主機板內調整防掉壓選項就是調整這個阻值的大小,
以華碩為例,LV越大阻值越小掉壓越少,總共有8級
那接下來我相信有人就會說,那掉壓後CPU不就不穩定了?
沒錯,所以intel又定義了一個名為AC Loadline的虛擬電阻來針對即將到來的VRM Loadline掉壓
做提前升壓,這個升壓會也必須在掉壓前進行,不然電壓還是有可能跌破閥值
目前13代/14代桌面CPU,intel給的標準對應VRM Loadline一樣是1.1毫歐(mOhm)
假設CPU今天預測電流為100A,VID表定為1300mv,那透過公式計算升壓值也就是100*1.1=110mv,1300mv+110mv,CPU想要向VRM索取的電壓就是1410mv。
到這大家會知道實際電壓就是經過AC Loadline升壓再經過VRM降壓這個一升一降所得到
要是升壓的值跟降壓的值一樣就達到完美平衡(強迫症狂喜),不過那個"但是"馬上就來了。
但是跟前面說的一樣,理論跟現實總是有差距,CPU在負載來臨前並無法知道確切電流是多少,只能自行針對使用的指令集提前預測電流大小,但是12代開始核心數暴增,而核心數量越多
電流越大,也代表輕載到滿載之間電流浮動值越大,所以CPU基本上為了確保在任何情況下都足壓,電流預測都會趨於保守也就是偏大,13代預設電壓偏高就是因此而來,板廠自然知道這些
因此Z板大多預設就將AC Loadline「優化」了,例如華碩針對13代i9給0.5mOhm的AC Loadline,技嘉則是0.4mOhm。
再來講DC Loadline,首先CPU功耗 = 真實電壓 x 真實電流。 但是Intel 的CPU只能知道真實電流跟它自己向VRM索取的電壓,無法得知真實電壓(軟顯電壓都是由主機板端測量出來的,華碩跟微星選擇不同測量點顯示電壓就不同)。
它需要拿上述說的電壓用算法去近似真實電壓,再用這個電壓來計算功耗
(軟顯的各種數據都是數位訊號,計算出來的,並非物理上真實數據)
就像實際電壓是CPU向VRM索取的電壓經過VRM Loadline掉壓之後得到那樣,
所以這個電壓最後在計算功耗前也會被DC Loadline模擬掉壓,
HWINFO中的核心VID就是經由DC Loadline模擬掉壓後算出來的
一般來講,DC Loadline的阻值都會跟VRM Loadline相同,主機板也基本會把DC Loadline跟VRM Loadline的值同步(一般來講不用手動去調),不然軟顯功耗算出來會是錯的。
到這裡為止我們就知道其實Intel的理想標準上 AC Loadline=VRM Loadline=DC Loadline=1.1mOhm。
並且稍微總結一下
CPU跟VRM索取的電壓 = VID電壓 + CPU預測的電流 x AC Loadline
實際電壓 = CPU跟VRM索取的電壓 - 真實電流 x VRM Loadline
系統內顯示的VID電壓 = CPU跟VRM索取的電壓 - 真實電流 x DC Loadline
AC Loadline是為了在VRM Loadline掉壓前提早升壓 (調高會間接抬高實際電壓)
DC Loadline是為了計算軟顯數據 (一般而言不需要調整)
通常情況來講,因為AC Loadline提前升壓的值隨著實際電流大小,抬高的值也不同
所以我會建議降壓都只調AC就好,才能確保輕載衝高頻的時候電壓不會不足
整條曲線offset容易在少核的時候不穩定。
最後我們來提最多人搞錯的CEP,CEP全名是Current Excursion Protection,顧名思義是過電流保護
這個功能觸發的時候會強制做Clock Stretching,把等效時脈拉下來降低實際電流以保護CPU
很多人不知道的是一般軟體抓到的時脈跟核心內部等效時脈會有可能不一樣,等校時脈才是真正的工作時脈
再來看CEP觸發後,核心內部等效時脈被大幅降低導致實際效能大降
單獨開關CEP只會差別在是否會觸發這個保護,跟CPU其他設定一點關係都沒有,關了並不會降壓。
至此,感謝各位讀到這。
下一篇將會繼續引申電流牆,電壓牆,功耗牆以及我個人使用過較為有效的降低CPU縮缸機率之方法。(敬請期待)