DXGKDDI_CALIBRATEGPUCLOCK funzione di callback (d3dkmddi.h)
Chiamato dal sottosistema del kernel della grafica Microsoft DirectX per calibrare i timestamp della GPU nel buffer di cronologia DXGK_HISTORY_BUFFER con l'ora dell'orologio della CPU.
Sintassi
DXGKDDI_CALIBRATEGPUCLOCK DxgkddiCalibrategpuclock;
NTSTATUS DxgkddiCalibrategpuclock(
IN_CONST_HANDLE hAdapter,
IN UINT32 NodeOrdinal,
IN UINT32 EngineOrdinal,
OUT_PDXGKARG_CALIBRATEGPUCLOCK pClockCalibration
)
{...}
Parametri
hAdapter
Handle per l'oggetto adapter per la GPU per cui ottenere le informazioni di calibrazione dei tempi.
Il driver miniport visualizzato in precedenza ha fornito questo handle al sottosistema kernel di grafica DirectX nel parametro di output MiniportDeviceContext della funzione DxgkDdiAddDevice .
NodeOrdinal
Indice di un nodo per il quale verranno ottenute le informazioni sulla calibrazione dei tempi. Questo nodo si trova all'interno dell'adattatore fisico definito dal parametro hAdapter .
EngineOrdinal
Indice in base zero del motore, all'interno del nodo specificato da NodeOrdinal , per cui verranno ottenute le informazioni sulla calibrazione dei tempi. Per le schede grafiche che non fanno parte di un collegamento in una configurazione LDA (Linked Display Adapter), è consigliabile impostare sempre EngineOrdinal su 0.
pClockCalibration
Puntatore a una struttura DXGKARG_CALIBRATEGPUCLOCK che fornisce informazioni sul contatore dell'orologio dalla GPU e dalla CPU.
Valore restituito
Restituisce STATUS_SUCCESS se ha esito positivo; in caso contrario, restituisce uno dei codici di errore definiti in Ntstatus.h.
Commenti
Il sottosistema del kernel della grafica DirectX usa le informazioni restituite nel parametro pClockCalibration per stimare la deriva tra la GPU e i clock della CPU.
Per ridurre al minimo le errori di calibrazione, il driver deve calcolare i valori per i membri GpuClockCounter e CpuClockCounter della struttura DXGKARG_CALIBRATEGPUCLOCK quasi simultaneamente.
Il sottosistema kernel della grafica DirectX chiama questa funzione abbastanza spesso, in genere almeno una volta ogni 30ms, per ridurre al minimo la deriva accumulata tra il clock della GPU e della CPU.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 8.1,WDDM 1.3 |
Server minimo supportato | Windows Server 2012 R2 |
Piattaforma di destinazione | Desktop |
Intestazione | d3dkmddi.h |
IRQL | DISPATCH_LEVEL |