Pianificare l'accelerazione GPU in Windows Server
Questo articolo presenta le funzionalità di virtualizzazione grafica disponibili in Windows Server.
Quando usare l'accelerazione GPU
A seconda del carico di lavoro, è possibile prendere in considerazione l'accelerazione GPU. Ecco cosa considerare prima di scegliere l'accelerazione GPU:
- Comunicazione remota di app e desktop (VDI/DaaS): se si crea un servizio di comunicazione remota di app o desktop con Windows Server, prendere in considerazione il catalogo delle app che ci si aspetta vengano eseguite dagli utenti. Alcuni tipi di app, ad esempio app CAD/CAM, app di simulazione, giochi e app di rendering/visualizzazione, si basano principalmente sul rendering 3D per offrire interattività fluide e reattive. La maggior parte dei clienti considera le GPU una necessità per un'esperienza utente ragionevole con questi tipi di app.
- Rendering remoto, codifica e carichi di lavoro di visualizzazione: questi carichi di lavoro orientati alla grafica tendono a basarsi principalmente sulle funzionalità specializzate di una GPU, ad esempio il rendering 3D efficiente e la codifica/decodifica dei frame, per ottenere obiettivi di efficienza e velocità effettiva. Per questo tipo di carico di lavoro, una singola macchina virtuale (VM) abilitata per GPU potrebbe essere in grado di corrispondere alla velocità effettiva di molte VM solo CPU.
- Carichi di lavoro HPC e ML: per carichi di lavoro computazionali altamente paralleli ai dati, ad esempio il calcolo ad alte prestazioni e il training o l'inferenza del modello di Machine Learning, le GPU possono ridurre notevolmente il tempo di risultato, il tempo di inferenza e il tempo di training. In alternativa, potrebbero offrire una migliore convenienza rispetto a un'architettura solo CPU a un livello di prestazioni confrontabile. Molti framework HPC (High Performance Compute) e di apprendimento automatico possono usare l'accelerazione GPU; valutare se l'accelerazione GPU potrebbe avvantaggiare il carico di lavoro specifico.
Virtualizzazione GPU in Windows Server
Le tecnologie di virtualizzazione GPU consentono l'accelerazione GPU in un ambiente virtualizzato, in genere all'interno delle macchine virtuali. Se il carico di lavoro è virtualizzato con Hyper-V, è necessario utilizzare la virtualizzazione grafica per fornire l'accelerazione GPU dalla GPU fisica alle app o ai servizi virtualizzati. Tuttavia, se il carico di lavoro viene eseguito direttamente su host fisici di Windows Server, non è necessario eseguire la virtualizzazione della grafica; le app e i servizi hanno già accesso alle funzionalità e alle API GPU supportate in modo nativo in Windows Server.
Le tecnologie di virtualizzazione grafica seguenti sono disponibili per le macchine virtuali Hyper-V in Windows Server:
Oltre ai carichi di lavoro delle macchine virtuali, Windows Server supporta anche l'accelerazione GPU dei carichi di lavoro in contenitori di Windows. Per altre informazioni, vedere Accelerazione GPU nei contenitori di Windows.
Assegnazione di dispositivi discreti (DDA)
La funzionalità DDA (Discrete Device Assignment) consente di dedicare una o più GPU fisiche a una macchina virtuale. In una distribuzione DDA, i carichi di lavoro virtualizzati vengono eseguiti nel driver nativo e in genere hanno accesso completo alle funzionalità della GPU. DDA offre il massimo livello di compatibilità delle app e potenziali prestazioni. DDA può anche fornire l'accelerazione GPU alle macchine virtuali Linux, a seconda del supporto.
Una distribuzione DDA può accelerare solo un numero limitato di macchine virtuali, poiché ogni GPU fisica può fornire accelerazione al massimo a una macchina virtuale. Se si sta sviluppando un servizio la cui architettura supporta macchine virtuali condivise, prendere in considerazione l'hosting di più carichi di lavoro accelerati per macchina virtuale. Ad esempio, se si sta compilando una soluzione Servizi Desktop remoto, è possibile migliorare la scalabilità degli utenti usando le funzionalità multisessione di Windows Server per ospitare più desktop utente in ogni VM. Questi utenti condividono i vantaggi dell'accelerazione GPU.
Vedi questi articoli per ulteriori informazioni:
- Pianificare la distribuzione utilizzando l'assegnazione di dispositivi discreta
- Distribuire dispositivi di grafica usando l'assegnazione di dispositivi discreta
Partizionamento GPU (GPU-P)
A partire da Windows Server 2025, il partizionamento GPU consente di condividere un dispositivo GPU fisico con più macchine virtuali (VM). Con il partizionamento o la virtualizzazione della GPU, ogni macchina virtuale ottiene una frazione dedicata della GPU anziché l'intera GPU.
Il partizionamento GPU usa l'interfaccia Single Root IO Virtualization (SR-IOV), che fornisce un limite di sicurezza supportato dall'hardware con prestazioni prevedibili per ogni VM. Ogni macchina virtuale può accedere solo alle risorse GPU a essa dedicate e il partizionamento hardware sicuro impedisce l'accesso non autorizzato da altre macchine virtuali.
Per altre informazioni sul partizionamento GPU, vedere questi articoli:
Confronto tra DDA e partizionamento GPU
Quando si pianifica la distribuzione, considerare le funzionalità seguenti e le differenze di supporto tra le tecnologie di virtualizzazione grafica:
Descrizione | Assegnazione di dispositivi discreti | Partizionamento GPU |
---|---|---|
Modello di risorsa GPU | Solo dedicato | Partitioned |
Densità di macchine virtuali | Basso (una o più GPU per una macchina virtuale) | Elevato (una o più GPU per molte macchine virtuali) |
Compatibilità delle app | Tutte le funzionalità della GPU offerte dal fornitore (DX 12, OpenGL, CUDA) | Tutte le funzionalità della GPU offerte dal fornitore (DX 12, OpenGL, CUDA) |
AVC444 | Disponibile tramite Criteri di gruppo | Disponibile tramite Criteri di gruppo |
VRAM della GPU | Fino a livello di VRAM supportata dalla GPU | Fino a livello di VRAM supportata dalla GPU per partizione |
Driver GPU nel guest | Driver della GPU del fornitore (NVIDIA, AMD, Intel) | Driver della GPU del fornitore (NVIDIA, AMD, Intel) |