Uso delle risorse tra schede in un sistema ibrido

A partire da Windows 8.1, un driver WDDM (Windows Display Driver Model) può supportare un sistema ibrido, in cui le risorse tra schede incrociate sono condivise tra una GPU integrata e una GPU discreta e un'applicazione può essere eseguita su una GPU, a seconda delle esigenze dell'applicazione. Il sistema operativo e il driver determinano in quale GPU deve essere eseguita un'applicazione.

Il driver miniport visualizzato deve esprimere il supporto per le risorse tra schede impostando il membro CrossAdapterResource della struttura DXGK_VIDMMCAPS .

I driver ottengono informazioni in modi diversi a seconda del tipo di allocazione. Se l'allocazione è una primaria a schermo intero tradizionale, il driver di visualizzazione in modalità utente ottiene le informazioni in genere fornite quando viene creato il primario, ad esempio il flag primario, l'ID origine della rete video presente (VidPN), la frequenza di aggiornamento e le informazioni di rotazione. Tuttavia, se l'allocazione è un capovolgimento diretto primario, l'allocazione tra adattatori può essere usata come primaria, ma il driver di visualizzazione in modalità utente non otterrà le informazioni consuete fornite al momento della creazione della primaria. In questo caso, inoltre, il driver di visualizzazione in modalità utente discreto riceve informazioni sul primario, ma non deve convalidarlo. Il driver integrato non riceve informazioni che indicano che è un'istanza primaria.

Questi argomenti successivi forniscono altri dettagli sull'implementazione del driver per i sistemi ibridi:

Definizione e proprietà di un sistema ibrido:

  • Il sistema contiene una singola GPU integrata e una singola GPU discreta: la GPU integrata è integrata nel chipset della CPU e restituisce un pannello di visualizzazione integrato, ad esempio un pannello LCD. La GPU discreta è in genere una scheda rimovibile che si connette al ponte nord del chipset della scheda madre attraverso un bus come PCI.
  • La GPU discreta ha prestazioni significativamente superiori rispetto alla GPU integrata.
  • La GPU discreta è un dispositivo di sola rendering e non sono connessi output di visualizzazione.
  • Entrambe le GPU sono fisicamente racchiuse nello stesso alloggio e la GPU discreta non può essere connessa o disconnessa mentre il computer è in esecuzione.
  • Il sistema operativo rileva la configurazione di un sistema ibrido quando esegue routine auto-test (POST), quando viene installato un nuovo driver o quando una scheda di visualizzazione è abilitata o disabilitata.

Definizione e proprietà di una risorsa tra schede:

  • Una risorsa tra adattatori è disponibile solo a partire da Windows 8.1.
  • Può essere paged-in solo al segmento di memoria GPU di apertura.
  • Viene allocata come risorsa condivisa.
  • Ha una sola allocazione, in un formato lineare.
  • Ha un allineamento standard del passo di 128 byte (definito dalla costante D3DKMT_CROSS_ADAPTER_RESOURCE_PITCH_ALIGNMENT ).
  • Ha un allineamento di altezza standard di 4 righe (definito dalla costante D3DKMT_CROSS_ADAPTER_RESOURCE_HEIGHT_ALIGNMENT ).
  • L'indirizzo iniziale della memoria è allineato a un limite di una pagina.
  • Potrebbe essere creata come allocazione standard dalla modalità kernel dal driver miniport visualizzato e quindi essere aperta in un secondo momento dal driver di visualizzazione in modalità utente.
  • Potrebbe essere creato dal driver di visualizzazione in modalità utente.