Partager via


Fonction D3DKMTConnectDoorbell (d3dkmthk.h)

Important

Certaines informations se rapportent à un produit de préversion qui peut être sensiblement modifié avant sa commercialisation. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.

D3DKMTConnectDoorbell connecte (ou reconnecte) une sonnette créée précédemment à une file d’attente matérielle.

Syntaxe

NTSTATUS D3DKMTConnectDoorbell(
  D3DKMT_CONNECT_DOORBELL *unnamedParam1
);

Paramètres

unnamedParam1

[in] Pointeur vers une structure *D3DKMT_CONNECT_DOORBELL* qui décrit la sonnette à connecter.

Valeur retournée

D3DKMTConnectDoorbell retourne STATUS_SUCCESS lorsque le système d’exploitation a correctement connecté la sonnette à la file d’attente matérielle et qu’UMD peut utiliser cette sonnette pour la soumission de travail. En règle générale, cet appel ne doit pas échouer ; toutefois, un code d’échec provient de la perte de GPU ou de l’arrêt de types de scénarios irrécupérables.

Remarques

Chaque fois que l’UMD envoie un nouveau travail à la file d’attente matérielle et sonne à la porte, il doit lire l’adresse DoorbellStatusCPUVirtualAddress pour case activée si l’anneau de sonnette a réussi. En cas d’échec, UMD doit appeler D3DKMTConnectDoorbell pour reconnecter la sonnette, puis réessayer la soumission.

Une sonnette peut être déconnectée pour plusieurs raisons :

  • Lorsqu’une sonnette est créée, le système d’exploitation l’initialise dans un état « déconnecté » et ne la connecte que lorsque UMD appelle D3DKMTConnectDoorbell pour la première fois.
  • La sonnette a été « victime » sur le matériel qui prend en charge le modèle de sonnette dédiée. Autrement dit, la sonnette physique de cette file d’attente matérielle a été affectée à une autre file d’attente matérielle. Cette réaffectation est probablement due au fait qu’il y a plus de files d’attente matérielles créées sur le GPU que de sonnettes physiques.
  • La sonnette a été déconnectée dans le cadre de la suspension de la file d’attente matérielle ou de la mise hors tension du GPU.

Quand UMD appelle D3DKMTConnectDoorbell pour connecter la sonnette affectée à une file d’attente matérielle, le système d’exploitation effectue un appel DxgkDdiConnectDoorbell correspondant à KMD, afin que le KMD puisse trouver une sonnette physique, l’affecter à cette file d’attente matérielle et établir les connexions nécessaires entre la file d’attente matérielle, la sonnette, le planificateur GPU, etc.

Pour plus d’informations, consultez Soumission de travail en mode utilisateur.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 11, version 24H2 (WDDM 3.2)
En-tête d3dkmthk.h

Voir aussi

D3DKMT_CONNECT_DOORBELL

D3DKMTCreateDoorbell

DxgkDdiConnectDoorbell