Specifica del tipo di memoria per una risorsa
Il driver di visualizzazione in modalità utente riceve informazioni sul tipo di memoria che deve essere usato quando riceve una richiesta per creare una risorsa. Il tipo di memoria viene specificato come memoria video o di sistema tramite gli enumeratori D3DDDIPOOL_SYSTEMMEM o D3DDDIPOOL_VIDEOMEMORY rispettivamente del membro Pooldella struttura D3DDDIARG_CREATERESOURCE. Inoltre, il runtime Di Microsoft Direct3D fornisce hint al driver sul tipo di memoria video da usare specificando uno degli enumeratori seguenti nel membro Pool :
D3DDDIPOOL_LOCALVIDMEM
Il runtime consiglia che il driver usi memoria video locale.
D3DDDIPOOL_NONLOCALVIDMEM
Il runtime consiglia che il driver usi memoria video non locale,ad esempio memoria AGP.
Il runtime fornisce hint al driver di visualizzazione in modalità utente per migliorare le prestazioni. Ad esempio, il runtime potrebbe specificare D3DDDIPOOL_NONLOCALVIDMEM se la CPU scrive nella superficie, che viene eseguita più velocemente usando memoria video non locale.
Il driver di visualizzazione in modalità utente passa gli hint al driver miniport visualizzato tramite i membri pPrivateDriverData dei D3DDDI_ALLOCATIONINFO e dellestrutture DXGK_ALLOCATIONINFO in modo specifico del fornitore. Il driver miniport visualizzato indica al gestore della memoria video il segmento di memoria appropriato da usare restituendo l'identificatore del segmento nel membro HintedSegmentId della struttura DXGK_ALLOCATIONINFO da una chiamata alla funzione DxgkDdiCreateAllocation del driver.
Indipendentemente dal tipo di memoria video usata per creare la risorsa, il driver di visualizzazione in modalità utente non deve esporre alcuna differenza semantica al runtime. Vale a dire, per ogni tipo di memoria video, il driver deve eseguire il rendering delle informazioni in modo identico e deve restituire gli stessi valori restituiti.