Windows CPU 電源設定

如何限制 Windows CPU 功耗、關掉 Turbo Boost

筆電風扇狂轉發燙、或桌機整夜閒置卻幾乎跑滿功耗,通常都可以追回同一個設定:最大處理器狀態。這篇講清楚它在 Windows 11 和 10 藏在哪、能立刻生效的 powercfg PROCTHROTTLEMAX 指令、它怎麼順便關掉 Turbo Boost,以及為什麼今天設好的上限下次切電源計畫又悄悄不見了

快速答案:控制台 → 電源選項 → 變更計畫設定 → 變更進階電源設定處理器電源管理 → 把「最大處理器狀態」設成低於 100%——試試 70%。想用命令列?powercfg /setacvalueindex scheme_current sub_processor PROCTHROTTLEMAX 70,再跑 powercfg /setactive scheme_current 讓它套用。往下看它跟 Turbo Boost 的關係、為什麼上限撐不過切電源計畫,以及怎麼讓它真的黏住。

免費下載 PowerDoze GPU 也有一樣的做法 →

CPU 功耗上限藏在哪

跟睡眠逾時不一樣,這個設定從來沒被搬進兩代 Windows 的簡易「設定」App——它只活在傳統控制台的對話框裡:

和睡眠設定一樣,筆電會分別顯示使用電池時插電時兩個值;桌機只會顯示插電那個。常見做法是插電時維持 100% 求全效能、電池時壓到 60–70% 拉長續航——但也有不少人兩個都設低,圖的就是安靜。

用命令列改(powercfg)

powercfg 寫的是跟進階設定對話框同一個值,如果要改不只一次會快很多。數字是百分比(5–100);設 70 就代表「持續時脈永遠不超過額定速度的 70%」。大家最常漏掉的一步:光寫入這個值不會生效——你要重新啟用計畫才行。

你要改的 插電時 使用電池時
最大處理器狀態powercfg /setacvalueindex scheme_current sub_processor PROCTHROTTLEMAX 70setdcvalueindex scheme_current sub_processor PROCTHROTTLEMAX 60
最小處理器狀態powercfg /setacvalueindex scheme_current sub_processor PROCTHROTTLEMIN 5setdcvalueindex scheme_current sub_processor PROCTHROTTLEMIN 5
套用變更powercfg /setactive scheme_current

最後這行指令很容易被忘記,這也是為什麼有人反映「明明設了但沒變化」——setacvalueindexsetdcvalueindex 只是把數字寫進計畫的儲存區。用 setactive 重新啟用目前作用中的計畫,才是真正把這個值推到正在跑的系統上的那一步。用 powercfg /query scheme_current sub_processor PROCTHROTTLEMAX 確認有寫進去。

為什麼限制上限順便就關掉了 Turbo Boost

Turbo Boost(Intel Turbo Boost、AMD Precision Boost)是晶片在有散熱和功耗空間時,短暫跑到超過基礎時脈的機制。它永遠只會在 Windows 設定的上限以下運作——所以最大處理器狀態設 100% 時 turbo 完全自由發揮,只要低於 100% 就會自動被壓住,不需要另外找一個開關去關。這也正是不成比例的熱量和風扇噪音藏身之處:現代 CPU 能達到的時脈最後那一截,每多一點效能要付出的功耗遠比基礎時脈高,所以只要把上限砍個 20–30 個百分點,多數的功耗尖峰就會消失。

你想改的是…… 設定名稱 它做什麼
CPU 能持續跑多快最大處理器狀態硬性上限;turbo 無法超過
Turbo Boost 會不會啟動同一個設定,間接決定低於 100% 的任何值都會擋住它
不同情境要不同上限PowerDoze 電源模式Windows 換計畫就會重設上限;模式會自動重套

「明明設好了,卻又不知不覺跳回去」

PROCTHROTTLEMAX 是存在特定電源計畫裡的,不是 Windows 的全域設定。這代表它只有在那個計畫維持作用中的時候才有效。兩件事會悄悄把它打回原形:

作用中的電源計畫被換掉了

遊戲啟動器的「效能模式」、GPU 驅動程式安裝過程重設了計畫、或你自己手動切回平衡模式——這些動作都會換掉哪個計畫是作用中的,而你設的上限只存在你當初改的那一個計畫裡。如果平衡模式本來就沒設上限,就會直接跳回 100%。

適合理解:為什麼同一台電腦「以前有壓住」現在卻沒有,而且沒有錯誤訊息也沒有通知。注意:重開機本身不會清掉這個值——是換計畫這個動作清掉的。

改到錯的計畫,或忘了 setactive

scheme_current 針對的是當下作用中的計畫——如果你之後又切了計畫,新的那個計畫從沒拿到這個值。而且如上面提到的,漏掉 powercfg /setactive scheme_current 代表數字有存進去,但從沒被推到正在跑的系統上。

適合理解:「我明明有打指令」這種狀況。解法:對你實際在用的計畫重新跑一次,並且永遠記得後面接 setactive

想更深入了解風扇噪音這個角度——散熱原則、GPU 限制、完整的「為什麼我的電腦這麼吵」拆解?看讓 PC 安靜下來的三個設定

撐得過重開機和切計畫的上限——PowerDoze(免費)

Windows 把 PROCTHROTTLEMAX、boost 模式、散熱原則都存在計畫裡,作用中計畫一換、或驅動程式安裝重設了東西,沒有任何機制會幫你重新套用。PowerDoze 把 CPU 最大/最小狀態、Turbo Boost 開關、散熱原則全都包進你只需要建一次的電源模式裡——設成開機自動套用,或掛上排程,它每次都會把同一組值寫回去,你不用再重新找到那個進階設定對話框。日常用一個壓在 70% 的安靜模式,真的需要效能時切到不設上限的模式,一鍵切換或全自動。免費最多 2 個自訂電源模式,不用帳號。

誠實說明:這些事 Windows 自己全部都做得到——進階電源設定對話框裡每一項控制都在,只是藏在好幾層選單底下,計畫一被重設就很容易搞丟。PowerDoze 沒有加入 Windows 沒有的新 CPU 控制能力;它只是把你本來就有的設定變成一鍵、而且會持續生效,而不是你每隔幾週就要重新翻出來的東西。侷限:免費版上限 2 個模式;專業版取消上限,並加入依程式、依 Wi-Fi、依排程自動切換。

免費下載 PowerDoze 順便限制 GPU 功耗 →

常見問題

要怎麼限制 Windows 的 CPU 功耗?

控制台 → 電源選項 → 變更計畫設定 → 變更進階電源設定 → 處理器電源管理 → 最大處理器狀態,設成低於 100%(試試 60–80%)。或用命令列:powercfg /setacvalueindex scheme_current sub_processor PROCTHROTTLEMAX 70,接著跑 powercfg /setactive scheme_current 讓它生效。

要怎麼關掉 Windows 的 Turbo Boost?

把最大處理器狀態設成低於 100% 的任何值——turbo 只會在你設的上限以下才啟動,所以就算上限是 100%、turbo「開著」,它照樣會跑。想要更細的控制,處理器電源管理 → 系統散熱原則在部分系統上會有 Boost Mode(升壓模式)選項(停用/啟用/積極),但很多 Windows 安裝根本不會在進階設定介面顯示這個選項。

改最大處理器狀態的 powercfg 指令是什麼?

powercfg /setacvalueindex scheme_current sub_processor PROCTHROTTLEMAX 70 把插電時的上限設成 70%;把 setacvalueindex 換成 setdcvalueindex 就是設電池時的值。之後要跑 powercfg /setactive scheme_current——只寫入數值不會生效,要重新啟用計畫才會套用。

限制 CPU 功耗真的能降溫、降低風扇噪音嗎?

會,而且效果不成比例地明顯。CPU 時脈最後那一截——turbo 的範圍——每多一點效能要付出的功耗遠比基礎時脈高。把上限壓到 70–80% 就能砍掉大部分的功耗尖峰,而上網、看片、文書這類日常工作幾乎感覺不出差別。

為什麼我重開機後 CPU 限制就不見了?

PROCTHROTTLEMAX 是存在電源計畫裡的,不是全域設定,所以只要切換計畫——或 Windows Update 悄悄重設了某個計畫——它就會跳回去。單純重開機不會清掉存在作用中計畫裡的值,但任何會換掉作用中計畫的動作(遊戲啟動器的效能模式、驅動程式安裝、手動切回平衡模式)都會。除非你自己設好自動重套,不然沒有東西會幫你補回去。

限制 CPU 功耗在 PowerDoze 是付費功能嗎?

不是——CPU 最大/最小狀態和 Turbo Boost 都是電源模式的一部分,免費最多可以設 2 個自訂模式,不用帳號。專業版取消這個上限,並加入依程式、依 Wi-Fi、依排程自動切換。

想要一個不會每次切電源計畫就被重設的安靜 CPU 上限?電源模式免費,最多 2 個模式,不用帳號。

免費下載,支援 Windows 10/11

延伸閱讀:限制 Windows GPU 功耗 · 讓 PC 安靜下來的三個設定 · 更改 Windows 睡眠時間 · 所有功能