Partager via


DXGKDDI_CONTROLINTERRUPT3 fonction de rappel (d3dkmddi.h)

La fonction DxgkDdi_ControlInterrupt3 active ou désactive le type d’interruption donné pour le VidPnSourceId spécifié sur le matériel graphique.

Syntaxe

DXGKDDI_CONTROLINTERRUPT3 DxgkddiControlinterrupt3;

NTSTATUS DxgkddiControlinterrupt3(
  [in] IN_CONST_HANDLE hAdapter,
  [in] IN_CONST_PDXGKARG_CONTROLINTERRUPT3 InterruptControl
)
{...}

Paramètres

[in] hAdapter

Handle de l’objet adaptateur pour l’unité de traitement graphique (GPU). Le pilote a retourné ce handle dans le paramètre MiniportDeviceContext à partir d’un appel à sa fonction DxgkDdiAddDevice .

[in] InterruptControl

Structure DXGKARG_CONTROLINTERRUPT3 qui fournit le type d’interruption, l’état VSYNC et le VidPnSourceId.

Valeur retournée

DxgkDdi_ControlInterrupt3 retourne l’une des valeurs suivantes :

Code de retour Description
STATUS_SUCCESS Le type d’interruption a été correctement activé ou désactivé sur le matériel graphique.
STATUS_NOT_IMPLEMENTED DxgkDdi_ControlInterrupt3 ne prend pas en charge l’activation ou la désactivation du type d’interruption spécifié.

Remarques

Le contrôle VSync est utilisé dans WDDM pour activer et désactiver VSync afin d’équilibrer l’utilisation active d’une source VidPn par un scénario et les économies d’énergie obtenues en désactivant la synchronisation VSync. En général, le système d’exploitation contrôle la logique du moment où VSync doit rester activé et désactivé et avertit le pilote de mode noyau IHV (KMD) via un appel DDI. Le KMD exécute la requête. Avant Windows 10, version 2004 (WDDM 2.7), la granularité du contrôle VSync est par carte ; autrement dit, pour une carte donnée, le contrôle VSync s’applique à chaque source VidPn de l’adaptateur. Par exemple, considérez un adaptateur qui a deux sources VidPn connectées à deux sorties différentes. Si une sortie n’a aucune activité et aucun consommateur pour VSync/VBlank, il n’y a qu’une seule option : le système d’exploitation doit conserver VSync ON pour la sortie inactive.

Pour les appareils portables à double écran, le fait de conserver VSync ACTIVÉ pour un écran lorsqu’il n’est pas nécessaire entraîne des coûts d’alimentation importants. Il nécessite que le lien contrôleur d’affichage/affichage reste actif et empêche les panneaux qui prennent en charge l’actualisation automatique de passer en mode d’actualisation automatique basse fréquence et faible consommation. Dans Windows 10, version 2004 et versions ultérieures, DxgkDdiControlInterrupt3 permet un contrôle VSync plus précis de par source VidPn d’un adaptateur.

Une seule DxgkDdiControlInterrupt3 ou DxgkDdi_ControlInterrupt2 sera utilisée par le système d’exploitation pendant la durée de vie d’un adaptateur.

Les pilotes WDDM 2.7 qui n’implémentent pas DxgkDdi_ControlInterrupt3 se désengagent du contrôle VidPn VSync indépendant, et le système d’exploitation appellera uniquement DxgkDdi_ControlInterrupt2. La fonctionnalité DXGK_DRIVERCAPS-IndependentVidPnVSync> doit être de 0 dans les pilotes qui ne prennent pas en charge DxgkDdi_ControlInterrupt3 ; sinon, l’initialisation de l’adaptateur échoue. Si un pilote implémente DxgkDdi_ControlInterrupt3, la fonctionnalité peut être définie sur 0 ou 1 pour indiquer Per-VidPn prise en charge.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10, version 2004
En-tête d3dkmddi.h

Voir aussi

DXGKARG_CONTROLINTERRUPT2

DXGK_DRIVERCAPS

DXGKARG_CONTROLINTERRUPT3

DxgkDdi_ControlInterrupt2