Configurare l'accelerazione GPU per Desktop virtuale Azure

Importante

Questo contenuto si applica a Desktop virtuale Azure con oggetti di Azure Resource Manager. Se si usa Desktop virtuale Azure (versione classica) senza oggetti di Azure Resource Manager, vedere questo articolo.

Desktop virtuale Azure supporta l'accelerazione gpu (Graphics Processing Unit) nel rendering e nella codifica per migliorare le prestazioni e la scalabilità delle app. L'accelerazione GPU è fondamentale per le app a elevato utilizzo di grafica e può essere usata con tutti i sistemi operativi supportati per Desktop virtuale Azure.

L'elenco non include in particolare versioni multisessione di Windows. Tuttavia, ogni GPU in macchine virtuali di Azure serie NV include una licenza GRID che supporta 25 utenti simultanei. Per altre informazioni, vedere NV-series.

Questo articolo illustra come creare una macchina virtuale di Azure ottimizzata per GPU, aggiungerla al pool di host e configurarla per l'uso dell'accelerazione GPU per il rendering e la codifica.

Prerequisiti

Questo articolo presuppone che sia già stato creato un pool di host e un gruppo di applicazioni.

Selezionare una dimensione di macchina virtuale di Azure ottimizzata per la GPU appropriata

Selezionare una delle dimensioni della macchina virtuale serie NVv3, serie NVv4, serie NVadsA10 v5 o NCasT4_v3 serie vm da usare come host di sessione. Queste dimensioni sono personalizzate per la virtualizzazione di app e desktop. Consentono di accelerare la maggior parte delle app e dell'interfaccia utente di Windows.

La scelta giusta per il pool di host dipende da molti fattori, tra cui carichi di lavoro di app specifici, qualità desiderata dell'esperienza utente e costi. In generale, le GPU più grandi e più idonee offrono un'esperienza utente migliore a una determinata densità utente. Le dimensioni della GPU più piccole e frazionarie consentono un controllo più granulare sui costi e sulla qualità.

Nota

È previsto il ritiro delle macchine virtuali serie NV. Per altre informazioni, vedere Ritiro nv.

Le macchine virtuali serie NCv2, NCv3, ND e NDv2 di Azure non sono in genere appropriate per gli host di sessione di Desktop virtuale Azure. Queste macchine virtuali sono personalizzate per strumenti specializzati di calcolo ad alte prestazioni o machine learning, ad esempio quelli creati con NVIDIA CUDA. Non supportano l'accelerazione GPU per la maggior parte delle app o l'interfaccia utente di Windows.

Installare i driver grafici supportati nella macchina virtuale

Per sfruttare le funzionalità GPU delle macchine virtuali serie N di Azure in Desktop virtuale Azure, è necessario installare i driver di grafica appropriati. Seguire le istruzioni in Sistemi operativi e driver supportati per installare i driver . Sono supportati solo i driver distribuiti da Azure.

Tenere presenti queste informazioni specifiche sulle dimensioni:

  • Per le macchine virtuali serie NV di Azure, serie NVv3 o serie NCasT4_v3, solo i driver NVIDIA GRID supportano l'accelerazione GPU per la maggior parte delle app e l'interfaccia utente di Windows. I driver NVIDIA CUDA non supportano l'accelerazione GPU per queste dimensioni della macchina virtuale.

    Se si sceglie di installare manualmente i driver, assicurarsi di installare i driver GRID. Se si sceglie di installare i driver usando l'estensione macchina virtuale di Azure, i driver GRID verranno installati automaticamente per queste dimensioni della macchina virtuale.

  • Per le macchine virtuali serie NVv4 di Azure, installare i driver AMD forniti da Azure. È possibile installarli automaticamente usando l'estensione macchina virtuale di Azure oppure installarli manualmente.

Dopo l'installazione, è necessario eseguire il riavvio della macchina virtuale. Usare i passaggi di verifica nelle istruzioni precedenti per verificare che i driver di grafica siano stati installati correttamente.

Configurare il rendering delle app con accelerazione GPU

Per impostazione predefinita, le app e i desktop in esecuzione in Windows Server vengono sottoposti a rendering con la CPU e non usano GPU disponibili per il rendering. Configurare Criteri di gruppo per l'host di sessione per abilitare il rendering con accelerazione GPU:

  1. Connessione sul desktop della macchina virtuale usando un account con privilegi di amministratore locale.
  2. Aprire il menu Start e immettere gpedit.msc per aprire Editor Criteri di gruppo.
  3. Passare a Configurazione> computer Amministrazione Modelli>amministrativi Componenti>di Windows Servizi Desktop>remoto Host>sessione Desktop remoto Ambiente sessione remota.
  4. Selezionare il criterio Usa schede grafiche hardware per tutte le sessioni di Servizi Desktop remoto. Impostare questo criterio su Abilitato per abilitare il rendering della GPU nella sessione remota.

Configurare la codifica del frame con accelerazione GPU

Desktop remoto codifica tutte le immagini di cui le app e i desktop eseguono il rendering per la trasmissione ai client Desktop remoto. Quando una parte dello schermo viene aggiornata di frequente, questa parte dello schermo viene codificata con un codec video (H.264/AVC). Per impostazione predefinita, Desktop remoto non usa GPU disponibili per questa codifica.

Configurare Criteri di gruppo per l'host di sessione, per abilitare la codifica del frame con accelerazione GPU. La procedura seguente continua i passaggi precedenti.

Nota

La codifica dei fotogrammi con accelerazione GPU non è disponibile nelle macchine virtuali serie NVv4.

  1. Selezionare il criterio Configure H.264/AVC hardware encoding for Remote Desktop connections (Configura codifica hardware H.264/AVC per le connessioni Desktop remoto). Impostare questo criterio su Abilitato per abilitare la codifica hardware per AVC/H.264 nella sessione remota.

    Se si usa Windows Server 2016, impostare Prefer AVC Hardware Encoding (Prefer AVC Hardware Encoding) su Always attempt (Prefer AVC Hardware Encoding to Always Attempt).

  2. Dopo aver modificato i criteri, forzare un aggiornamento di Criteri di gruppo. Aprire il prompt dei comandi come amministratore ed eseguire il comando seguente:

    gpupdate.exe /force
    
  3. Disconnettersi dalla sessione desktop remoto.

Configurare la codifica video a schermo intero

Nota

È possibile abilitare la codifica video a schermo intero anche senza una GPU presente.

Se si usano spesso applicazioni che producono contenuto a frequenza di fotogrammi elevata, è possibile scegliere di abilitare la codifica video a schermo intero per una sessione remota. Tali applicazioni possono includere la modellazione 3D, CAD/CAM o applicazioni video.

Un profilo video a schermo intero offre una frequenza di fotogrammi più elevata e un'esperienza utente migliore per queste applicazioni, a scapito della larghezza di banda di rete e sia dell'host di sessione che delle risorse client. È consigliabile usare la codifica dei fotogrammi con accelerazione GPU per una codifica video a schermo intero.

Configurare Criteri di gruppo per l'host sessione per abilitare la codifica video a schermo intero. Continuare i passaggi precedenti:

  1. Selezionare il criterio Assegna priorità alla modalità grafica H.264/AVC 444 per le connessioni Desktop remoto. Impostare questo criterio su Abilitato per forzare il codec H.264/AVC 444 nella sessione remota.

  2. Dopo aver modificato i criteri, forzare un aggiornamento di Criteri di gruppo. Aprire il prompt dei comandi come amministratore ed eseguire il comando seguente:

    gpupdate.exe /force
    
  3. Disconnettersi dalla sessione desktop remoto.

Verificare il rendering delle app con accelerazione GPU

Per verificare che le app usino la GPU per il rendering, provare uno dei metodi seguenti:

  • Per le macchine virtuali di Azure con gpu NVIDIA, usare l'utilità per verificare l'utilizzo della GPU durante l'esecuzione nvidia-smi delle app. Per altre informazioni, vedere Verificare l'installazione del driver.
  • Nelle versioni supportate del sistema operativo, è possibile usare Gestione attività per verificare l'utilizzo della GPU. Selezionare la GPU nella scheda Prestazioni per verificare se le app usano la GPU.

Verificare la codifica del frame con accelerazione GPU

Per verificare che Desktop remoto usi la codifica con accelerazione GPU:

  1. Connessione sul desktop della macchina virtuale usando il client Desktop virtuale Azure.
  2. Aprire Visualizzatore eventi e passare al nodo seguente: Applicazioni e servizi Log di>Microsoft>Windows>RemoteDesktopServices-RdpCoreCDV>Operational.
  3. Cercare l'ID evento 170. Se viene visualizzato il codificatore hardware AVC abilitato: 1, Desktop remoto usa la codifica con accelerazione GPU.

Suggerimento

Se ci si connette all'host di sessione all'esterno di Desktop virtuale Azure per testare l'accelerazione GPU, i log vengono invece archiviati nei log applicazioni e servizi di>Microsoft>Windows>RemoteDesktopServices-RdpCoreTs> in Visualizzatore eventi.

Verificare la codifica video a schermo intero

Per verificare che Desktop remoto usi la codifica video a schermo intero:

  1. Connessione sul desktop della macchina virtuale usando il client Desktop virtuale Azure.
  2. Aprire Visualizzatore eventi e passare al nodo seguente: Applicazioni e servizi Log di>Microsoft>Windows>RemoteDesktopServices-RdpCoreCDV>Operational.
  3. Cercare l'ID evento 162. Se viene visualizzato AVC Available: 1 Initial Profile: 2048, Remote Desktop usa la codifica video a schermo intero (AVC 444).

Suggerimento

Se ci si connette all'host di sessione all'esterno di Desktop virtuale Azure per testare l'accelerazione GPU, i log vengono invece archiviati nei log applicazioni e servizi di>Microsoft>Windows>RemoteDesktopServices-RdpCoreTs> in Visualizzatore eventi.

Passaggi successivi

Queste istruzioni devono essere eseguite con l'accelerazione GPU in un host di sessione (una macchina virtuale). Ecco alcune considerazioni aggiuntive per abilitare l'accelerazione GPU in un pool di host di dimensioni maggiori:

  • Prendere in considerazione l'uso di un'estensione macchina virtuale per semplificare l'installazione e gli aggiornamenti dei driver nelle macchine virtuali. Usare l'estensione del driver GPU NVIDIA per le macchine virtuali con GPU NVIDIA. Usare l'estensione del driver GPU AMD per le macchine virtuali con GPU AMD.
  • Prendere in considerazione l'uso di Active Directory per semplificare la configurazione di Criteri di gruppo tra macchine virtuali. Per informazioni sulla distribuzione di Criteri di gruppo nel dominio Active Directory, vedere Working with Group Policy Objects (Utilizzo degli oggetti Criteri di gruppo).