在驅動程式開發期間測試和偵錯 TDR
本文提供 TDR (逾時偵測和復原) 顯示驅動程式開發人員的測試與偵錯策略。
WHLK 中的 TDR 測試
Windows Hardware Lab Kit (WHLK) 包含 TDR 特定測試,可供驅動程式開發人員用於測試和偵錯。 例如,開發人員可以使用 SimulatePreemption TDR 手動觸發 GPU TDR。 如需各種 TDR 相關測試的詳細資訊,請參閱 Device.Graphics 。
用於測試和偵錯的 TDR 登錄機碼
開發人員只能在 驅動程式開發程序期間,使用下列 TDR 相關的登錄機碼進行測試或偵錯。
重要
這些登錄機碼不應該由終端使用者操作,或由目標測試或偵錯以外的應用程式在驅動程式開發期間操作。
TdrLevel
指定復原的初始層級。
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrLevel
ValueType : REG_DWORD
ValueData : TdrLevelXxx (see the following table)
其中 TdrLevelXxx 可以是下列其中一個值:
值 | 意義 |
---|---|
TdrLevelOff (0) | 偵測已停用 |
TdrLevelBugcheck (1) | 偵測到逾時的錯誤檢查;例如,沒有復原。 |
TdrLevelRecoverVGA (2) | 復原至 VGA (未實作) 。 |
TdrLevelRecover (3) | 在逾時 (預設值) 復原。 |
TdrDelay
指定 GPU 可以從 GPU 排程器延遲優先要求的秒數。 TdrDelay 實際上是逾時臨界值。
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrDelay
ValueType : REG_DWORD
ValueData : Number of seconds to delay. The default value is 2 seconds.
TdrDdiDelay
指定 OS 允許線程離開驅動程式的秒數。 在指定的時間之後,OS 錯誤會以程式代碼VIDEO_TDR_FAILURE (0x116) 检查计算机。
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrDdiDelay
ValueType : REG_DWORD
ValueData : Number of seconds to leave the driver. The default value is 5 seconds.
TdrDebugMode
指定 TDR 進程的偵錯相關行為。 默認值為 TDR_DEBUG_MODE_RECOVER_NO_PROMPT,表示不要中斷調試程式。
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrDebugMode
ValueType : REG_DWORD
ValueData : TDR_DEBUG_MODE_XXX (see the following table)
值 | 意義 |
---|---|
TDR_DEBUG_MODE_OFF (0) | 在復原之前中斷至核心調試程式,以允許調查逾時。 |
TDR_DEBUG_MODE_IGNORE_TIMEOUT (1) | 忽略任何逾時。 |
TDR_DEBUG_MODE_RECOVER_NO_PROMPT (2) | 復原而不中斷調試程式 (預設值) 。 |
TDR_DEBUG_MODE_RECOVER_UNCONDITIONAL (3) | 例如,即使某些復原條件不符合 (,仍會復原) 連續逾時。 |
TdrLimitTime
指定允許 TdrLimitCount 金鑰) (特定 TDR 數目,而不會損毀電腦的默認時間。
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrLimitTime
ValueType : REG_DWORD
ValueData : Number of seconds before crashing. The default value is 60 seconds.
TdrLimitCount
指定 TdrLimitTime 金鑰所指定期間允許的預設 TDR 數目 (0x117) ,而不會損毀計算機。
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrLimitCount
ValueType : REG_DWORD
ValueData : Number of TDRs before crashing. The default value is 5.
TdrTestMode
保留的。 請勿使用。
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrTestMode
ValueType : REG_DWORD
ValueData : Do not use.
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應