PCHardwarePro » 教程 » 如何在 Windows 中啟用和停用 HPET,以及何時值得這樣做
HPET 是 Windows 用於同步時間敏感型任務的高精度計時器,但在現代電腦上,它可能會增加延遲。
它的行為取決於 BIOS/UEFI 配置、bcdedit 指令以及「高精度事件計時器」設備的狀態。
在某些系統上停用 HPET 可以提高 FPS 和哈希率,尤其是在使用較舊或基本 CPU 的情況下,儘管這樣做並不總是有效。
修改 HPET 會帶來相容性風險和潛在的線上遊戲問題,因此最好有條不紊地進行嘗試,並知道如何還原變更。
如果你玩電腦遊戲、挖礦或從事音訊視訊工作,你可能聽過HPET,也就是Windows的高精度事件計時器。有些用戶為了追求更高的幀率或更好的性能而禁用它。然而,關於HPET有很多誤解、謠言和相互矛盾的設置,如果你不了解自己在做什麼,反而可能會使系統效能下降。
接下來,我們將深入探討HPET是什麼,它為何會影響遊戲、挖礦和多媒體任務,以及如何在BIOS和Windows系統中正確啟用或停用它。我們還將了解它何時能提升效能,何時會造成負面影響,甚至為什麼在某些網路遊戲中使用它可能被視為一種可疑的做法。
HPET是什麼?它究竟有什麼用途?
高精度事件計時器 (HPET) 是一種整合在現代個人電腦中的高解析度計時器,旨在協調各種系統組件的運行,例如顯示卡、聲卡、處理器以及任何依賴精確計時的組件。由於其在視頻遊戲、音訊和視訊播放器以及專業編輯軟體中的重要性,它也被稱為多媒體計時器。
HPET 的主要功能是提供一個高精度時鐘,供作業系統和應用程式用於調度事件(例如,何時繪製下一幀、何時處理音訊包或何時在 CPU 執行緒間同步任務)。理論上,這應該能夠提高系統的時間穩定性以及對時間敏感的應用行為的一致性。
然而,在實際應用中,現代系統通常無法提供明顯的效能提升,甚至可能增加延遲。 Windows 系統自備其他內部計時器(例如 TSC、LAPIC 或虛擬化的 HPET),在現代平台上,這些計時器通常足夠精確,速度也比直接使用實體 HPET 更快。
因此,雖然出於相容性考慮,HPET 通常預設啟用,但許多用戶發現停用它可以減少遊戲卡頓、提高平均幀率或略微提升加密貨幣挖礦效能。這種影響並非在所有系統上都相同,但在較舊或低階處理器上通常更為明顯。
另一個重要細節是,HPET 的影響不僅限於遊戲:任何處理器密集型應用,例如 CPU 或 GPU 挖礦程序,都會受到查詢此計時器帶來的額外延遲的影響。這就是為什麼許多礦工嘗試停用 HPET 以獲取更多哈希值的原因。
啟用和停用 HPET:涉及的層(BIOS 和 Windows)
在進行任何更改之前,請務必了解 HPET 可以在兩個不同的層級進行控制:BIOS/UEFI 和作業系統。為了完全啟用或完全停用 HPET,理想情況下,這兩個層級的配置應該保持一致。
BIOS(或較新主機板上的 UEFI)通常會有一個與 HPET 相關的特定選項,其名稱可能為「HPET 支援」、「高精度事件定時器」、「HPET 模式」或類似名稱。通常情況下,它只允許您選擇啟用或停用,某些韌體還允許您選擇使用 32 位元模式還是 64 位元模式。
在 Windows 系統中,HPET 的使用主要透過啟動管理器(使用 bcdedit 指令)以及裝置管理員進行控制。即使 BIOS 中啟用了 HPET,作業系統也可能選擇不明確使用它,除非強制啟用;反之亦然:即使 HPET 並不適合我們的特定情況,也可以強制啟用它。
為了確保行為改變真正一致,最好協調配置:如果我們不想使用 HPET,則在 BIOS 中停用它,避免在 Windows 中強制啟用它;如果我們想啟用它,請確保 BIOS 將其設定為啟用,並且 Windows 使用 bcdedit 將其標記為平台計時器。
有哪些類型的洋裝?除了 HPET 之外,Windows 還包含 `disabledynamictick` 參數,用於控制系統的動態時脈節拍。一些指南會結合調整 HPET 和禁用動態時脈節拍來略微降低某些情況下的延遲,但這並非總是值得的,而且可能會增加空閒功耗。
如何逐步在 Windows 系統中停用 HPET
在 Windows 系統中,停止使用 HPET 最直接的方法之一是使用管理員權限透過命令列進行操作。這樣可以修改啟動管理器配置,從而將 HPET 設定為平台定時器或將其移除。
若要在系統層級停用 HPET,關鍵命令是移除 `useplatformclock` 值,該值指示 Windows 使用 HPET 作為其主要時間參考。移除此值將導致系統停止強制使用 HPET,轉而使用其他更有效率的計時器,就像大多數現代電腦一樣。
許多使用者停用 Windows 系統中 HPET 的常用方法如下:以管理員身分開啟命令提示字元或 PowerShell,輸入對應的命令,然後重新啟動系統以使變更生效。在某些情況下,也會修改裝置管理員中的 HPET 裝置狀態,以阻止 Windows 存取它。
遊戲玩家提升幀率和減少卡頓的典型工作流程如下:首先,執行指令「bcdedit /deletevalue useplatformclock」(不含引號)並按下回車鍵。然後,開啟裝置管理員,進入「系統裝置」部分,找到「高精度事件計時器」條目。右鍵單擊該條目,選擇“禁用裝置”以停用驅動程式。
應用這些變更後,務必重新啟動電腦。重新啟動後,Windows 將不再強制使用 HPET 作為平台計時器,許多系統效能將會提升。具體來說,一些使用最新一代 Intel i5 處理器和中端顯示卡等配置的用戶報告稱,在玩《絕地求生》等大型遊戲時,幀率提升了約 15-20 FPS,並且畫面卡頓現像也減少了。
請注意,並非所有設備的反應都相同:有些情況下改進效果明顯,有些情況下幾乎察覺不到,少數情況下甚至可能使體驗變差(例如卡頓或不穩定)。因此,如果您嘗試這些調整,請務必記下您的原始設置,以便輕鬆恢復。
HPET 和動態滴答最常用的 bcdedit 指令
除了傳統的刪除 useplatformclock 的方法外,還有許多常用的 bcdedit 指令組合可以用來調整 Windows 計時器的行為。這些命令組合通常用於停用 HPET 或明確地重新啟用 HPET,具體取決於您要測試的內容。
為防止 Windows 將 HPET 用作平台計時器,通常的做法是以管理員身分在命令提示字元視窗或 PowerShell 中執行以下序列:
bcdedit /deletevalue 使用平台時鐘
bcdedit /set disabledynamictick yes
第一條指令移除 `useplatformclock` 值,該值指示系統不要強制使用 HPET。第二條指令 `disabledynamictick yes` 則停用動態時脈。這樣做之後,一些用戶會發現某些執行緒的延遲降低,回應速度更快,但同時也可能增加電腦空閒時的功耗。
如果在使用 HPET 進行實驗後,您想要恢復其使用或檢查相反的行為,您可以使用另一對命令重新啟動它:
bcdedit /設置 useplatformclock true
bcdedit /set disabledynamictick no
將 `useplatformclock` 設為 `true` 會使 Windows 使用 HPET 作為參考時鐘,有時可以幫助解決相容性問題,或解決某些依賴 HPET 的舊程式的問題。將 `disabledynamictick` 設為 `no` 會將動態時脈恢復到正常狀態,使系統能夠更積極地進入低功耗狀態。
務必嚴格按照命令內容輸入,包括空格和參數,並且始終以管理員權限在控制台中運行。使用 bcdedit 時出錯可能會導致系統無法正常啟動,因此請謹慎操作,並儘可能準備好還原點或備份。
使用 bcdedit 進行任何更改後,請務必重新啟動計算機,以便啟動管理器載入新配置。僅僅註銷是不夠的:完全重啟才能確保新設定真正生效。
Windows 有哪些類型?從裝置管理員停用 HPET
除了使用 bcdedit 調整設定外,許多使用者還會透過在 Windows 裝置管理員中停用 HPET 裝置本身來進一步停用它。這樣可以防止系統存取它,即使是作為輔助資源也不行。
操作步驟相對簡單:只需右鍵單擊 Windows 開始按鈕,然後從上下文功能表中選擇「裝置管理員」。進入裝置管理員後,將出現「系統裝置」部分,其中列出了許多計時器、橋接控制器等等。
在這些設備中,您應該會看到“高精度事件計時器”條目,它對應於 HPET。右鍵單擊該行,您會看到“禁用設備”選項。按一下此選項將阻止 Windows 在硬體層級使用該計時器。
建議將此操作與命令 `bcdedit /deletevalue useplatformclock` 結合使用,以便啟動管理器和作業系統本身都停止依賴 HPET。否則,可能會導致配置不一致,Windows 認為它將使用 HPET,但實際上該裝置已停用。
如果需要重新在裝置管理員中啟用 HPET,操作步驟與先前相反:返回“系統裝置”,找到“高精度事件計時器”,右鍵單擊,然後選擇“啟用裝置”。結合使用「bcdedit /set useplatformclock true」指令,在大多數情況下可以恢復先前的行為。
與往常一樣,更改 HPET 設備狀態後,建議重新啟動電腦。雖然某些變更可能看似立即生效,但更常見的情況是,重新啟動後整個系統會使用新的計時器配置進行初始化。
HPET對電玩遊戲的影響:幀率、卡頓和延遲
HPET之所以在硬體和遊戲論壇上如此受歡迎,原因之一在於它對幀率和遊戲流暢度的潛在影響。許多玩家反映,禁用HPET後,輕微的卡頓現象消失,平均幀率顯著提升。
例如,在《絕地求生》這類競技遊戲中,有些用戶透過移除 useplatformclock 並停用 HPET 設備,就能將幀率從 80-85 FPS 左右(伴隨輕微卡頓)提升到 100 FPS 以上,並且遊戲體驗更加流暢。典型的配置包括超頻的 Intel Core i5 處理器、16 GB DDR4 記憶體以及經過一定程度超頻的中端顯示卡。
通常情況下,提升最大的並非平均幀率,而是最低幀率的穩定性。透過降低因計時器過慢或效率低下造成的延遲,遊戲可以更輕鬆地保持穩定的幀時間,即使絕對幀率沒有顯著提升,也能帶來更流暢的遊戲體驗。
然而,謹慎預期是明智的:實際表現會因處理器、主機板、遊戲本身以及 Windows 版本而異。在某些系統上,停用 HPET 幾乎察覺不到任何變化;而在其他系統上,如果某些應用程式需要計時器處於活動狀態,停用 HPET 甚至可能導致系統不穩定或出現異常行為。
如果你對競技類網路遊戲感興趣,你需要注意一個敏感點:在某些多人遊戲中,操縱系統計時器被視為一種潛在的作弊或改變遊戲行為的方式,因此一些開發者會對此進行嚴格審查。曾有案例表明,停用HPET或其他計時設定會被視為「利用」系統漏洞,並導致玩家受到處罰或被封號。
因此,如果您既用電腦挖礦又玩線上遊戲,建議您將設定調得更保守一些。您可以嘗試在離線挖礦時停用 HPET,然後在進入競技遊戲之前重新啟用;或者,如果您不想冒著觸犯嚴格的反作弊政策的風險,您也可以直接使用預設設定。
在 CPU 和 GPU 上進行 HPET 和加密貨幣挖礦
在加密貨幣挖礦領域,HPET 也扮演著重要的角色,尤其是在 CPU 挖礦方面。一些高強度演算法,例如門羅幣使用的 RandomX 演算法,對處理器執行緒和存取共享資源的效率非常敏感,而係統延遲正是影響挖礦效能的關鍵所在。
Windows 11 螢幕閃爍解決方案:如何修復透過禁用 HPET,一些礦工發現礦機的算力略有提升。雖然提升幅度不大,但對於正在榨乾老舊或低階硬體性能的礦工來說,這些提升仍然值得嘗試。例如,在幾個世代之前的英特爾處理器上,算力提升了大約每秒十次。
在某個特定案例中,使用主頻為 3,0 GHz 的 Intel Core i5 4590S 處理器(雙線程運行),透過 XMRIG 挖礦軟體,採用 RandomX 演算法挖 Monero,啟用 HPET 後算力約為 1263 H/s,停用 HPET 後算力約為 1279 H/s。 13 H/s 的差距看似不大,但隨著時間的推移,在由多台機器組成的礦機上累積起來,這個差距就相當顯著了。
停用 HPET 的正面效果在舊或入門級 CPU 上尤其明顯,例如某些 Athlon 或 Celeron 處理器。這些處理器的效能提升空間較小,因此任何系統開銷的降低都能轉換為雜湊率的顯著提升。
然而,需要注意的是,HPET 僅對 CPU 挖礦有影響。許多 GPU 挖礦場為了降低成本,使用效能較低的處理器,如果系統時序延遲過高,這些處理器也可能成為瓶頸。在 CPU 效能較弱的 GPU 礦機中停用 HPET 可以降低系統的整體效能。
對於配備老舊或入門級處理器的礦機,通常建議花幾分鐘時間嘗試停用 HPET,並在停用前後分別檢查算力和功耗。大多數情況下,收益雖然不大,但卻是實實在在的,而對礦工來說,每一個百分點都至關重要。
使用HPET的優勢、風險和最佳實踐
修改HPET設定可以帶來明顯的益處,但也存在風險和一些需要注意的細節。它並非萬能靈藥,並非總是能改善所有情況,而是一項需要謹慎判斷的高級設定。
停用 HPET 的潛在優勢包括:一方面,遊戲運作更加流暢;另一方面,挖礦效能略有提升。使用者調整這些選項通常是為了減少畫面卡頓、略微縮短反應時間以及略微提高算力。
缺點在於,主要問題在於穩定性和相容性。一些較舊或高度特定的應用程式可能依賴 HPET 的可用性,或者其邏輯是圍繞該定時器建構的。在極少數情況下,完全停用 HPET 可能會導致意外崩潰或異常行為。
另一個敏感問題是與反作弊系統和網路遊戲政策的關係。更改系統計時器的行為可能會被偵測為可疑的篡改行為。雖然禁用 HPET 在技術上並不算是作弊,但一些開發者認為這是一種不良做法,如果他們認為這會造成不公平的優勢,可能會採取行動。
作為通用最佳實踐,強烈建議在進行任何變更之前建立系統還原點,或至少詳細記錄所有變更(BIOS 設定、使用的 bcdedit 命令、裝置管理員中的裝置狀態等)。這樣,如果發生任何意外情況,您可以恢復到先前的設定。
最後,請記住,最終結果很大程度上取決於硬體和軟體的組合:處理器、晶片組、Windows 版本、驅動程式以及工作負載(遊戲、挖礦、多媒體等)。唯一可靠的判斷方法就是進行系統測試:在相同條件下,分別測量升級前後的性能,並選擇真正能兼顧性能和穩定性的最佳配置。
HPET 是一種進階設置,在某些特定情況下(無論是遊戲還是挖礦)都能帶來顯著的效能提升,但它並不能保證在所有情況下都能帶來效能提升。如果您了解它的作用,知道如何在 BIOS、Windows 和裝置管理員中正確啟用和停用它,並且接受它對線上使用的影響,那麼您可以充分利用它;或者,如果它對您沒有明顯的益處,您可以保持預設設定。