Test et débogage du TDR pendant le développement du pilote

Cet article fournit des stratégies de test et de débogage TDR (détection et récupération du délai d’expiration) pour les développeurs de pilotes d’affichage.

Tests TDR dans WHLK

Le Kit de laboratoire matériel Windows (WHLK) contient des tests spécifiques À TDR que les développeurs de pilotes peuvent utiliser à des fins de test et de débogage. Par exemple, les développeurs peuvent déclencher manuellement un TDR GPU à l’aide du TDR SimulatePreemption. Pour plus d’informations sur les différents tests TDR, consultez Device.Graphics .

Clés de Registre TDR pour le test et le débogage

Les développeurs peuvent utiliser les clés de Registre liées au TDR suivantes à des fins de test ou de débogage uniquement pendant le processus de développement du pilote.

Important

Ces clés de Registre ne doivent pas être manipulées par les utilisateurs finaux ou par les applications en dehors du test ciblé ou du débogage pendant le développement du pilote.

TdrLevel

Spécifie le niveau initial de récupération.

KeyPath   : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue  : TdrLevel
ValueType : REG_DWORD
ValueData : TdrLevelXxx (see the following table)

Où TdrLevelXxx peut être l’une des valeurs suivantes :

Valeur Signification
TdrLevelOff (0) Détection désactivée
TdrLevelBugcheck (1) Le bogue case activée sur le délai d’expiration détecté ; par exemple, aucune récupération.
TdrLevelRecoverVGA (2) Récupérer vers VGA (non implémenté).
TdrLevelRecover (3) Récupérer au moment du délai d’expiration (valeur par défaut).

TdrDelay

Spécifie le nombre de secondes pendant lesquelles le GPU peut retarder la requête préempte du planificateur GPU. TdrDelay est en fait le seuil de délai d’expiration.

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

Spécifie le nombre de secondes pendant lesquelles le système d’exploitation autorise les threads à quitter le pilote. Après un délai spécifié, le système d’exploitation vérifie les bogues de l’ordinateur avec le code 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

Spécifie le comportement lié au débogage du processus TDR. La valeur par défaut est TDR_DEBUG_MODE_RECOVER_NO_PROMPT, ce qui indique de ne pas s’introduire dans le débogueur.

KeyPath   : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue  : TdrDebugMode
ValueType : REG_DWORD
ValueData : TDR_DEBUG_MODE_XXX (see the following table)
Valeur Signification
TDR_DEBUG_MODE_OFF (0) Arrêt sur le débogueur du noyau avant la récupération pour permettre l’examen du délai d’expiration.
TDR_DEBUG_MODE_IGNORE_TIMEOUT (1) Ignorez tout délai d’expiration.
TDR_DEBUG_MODE_RECOVER_NO_PROMPT (2) Récupérer sans s’introduire dans le débogueur (valeur par défaut).
TDR_DEBUG_MODE_RECOVER_UNCONDITIONAL (3) Récupérer même si certaines conditions de récupération ne sont pas remplies (par exemple, récupérer sur des délais d’expiration consécutifs).

TdrLimitTime

Spécifie la durée par défaut pendant laquelle un nombre spécifique de TDR (spécifié par la clé TdrLimitCount ) sont autorisés sans bloquer l’ordinateur.

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

Spécifie le nombre par défaut de tdrs (0x117) autorisés pendant la durée spécifiée par la clé TdrLimitTime sans bloquer l’ordinateur.

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

Réservé. Ne pas utiliser.

KeyPath   : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue  : TdrTestMode
ValueType : REG_DWORD
ValueData : Do not use.