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 |