Condividi tramite


Funzione D3DKMTConnectDoorbell (d3dkmthk.h)

Importante

Alcune informazioni si riferiscono a un prodotto in versione preliminare che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.

D3DKMTConnectDoorbell connette (o riconnette) un campanello creato in precedenza a una coda hardware.

Sintassi

NTSTATUS D3DKMTConnectDoorbell(
  D3DKMT_CONNECT_DOORBELL *unnamedParam1
);

Parametri

unnamedParam1

[in] Puntatore a una struttura *D3DKMT_CONNECT_DOORBELL* che descrive il campanello da connettere.

Valore restituito

D3DKMTConnectDoorbell restituisce STATUS_SUCCESS quando il sistema operativo connette correttamente il campanello alla coda hardware e UMD può usare questo campanello per l'invio di lavoro. In genere questa chiamata non deve avere esito negativo; Tuttavia, un codice di errore proviene da gpu perse o arresta tipi di scenari irreversibili.

Commenti

Ogni volta che il UMD invia un nuovo lavoro alla coda hardware e suona il campanello, deve leggere doorbellStatusCPUVirtualAddress per verificare se il campanello è riuscito. In caso di errore, UMD deve chiamare D3DKMTConnectDoorbell per riconnettere il campanello e quindi ritentare l'invio.

Un campanello può essere disconnesso per diversi motivi:

  • Quando viene creato un campanello, il sistema operativo lo inizializza in uno stato "disconnesso" e lo connette solo quando UMD chiama D3DKMTConnectDoorbell per la prima volta.
  • Il campanello è stato "vittima" su hardware che supporta il modello di campanello dedicato. Ovvero, il campanello fisico della coda hardware è stato assegnato a un'altra coda hardware. Questa riassegnazione è probabile perché sono presenti più code hardware create sulla GPU rispetto ai campanelli fisici.
  • Il campanello è stato disconnesso come parte della sospensione della coda hardware o dell'accensione della GPU.

Quando UMD chiama D3DKMTConnectDoorbell per connettere il campanello assegnato a una coda hardware, il sistema operativo effettua una chiamata DxgkDdiConnectDoorbell corrispondente a KMD, in modo che il KMD possa trovare un campanello fisico, assegnarlo a questa coda hardware e stabilire le connessioni necessarie tra la coda hardware, il campanello, l'utilità di pianificazione GPU e così via.

Per altre informazioni, vedere Invio di lavoro in modalità utente.

Requisiti

Requisito Valore
Client minimo supportato Windows 11 versione 24H2 (WDDM 3.2)
Intestazione d3dkmthk.h

Vedi anche

D3DKMT_CONNECT_DOORBELL

D3DKMTCreateDoorbell

DxgkDdiConnectDoorbell