Condividi tramite


Abilitare l'accelerazione GPU per Desktop virtuale Azure

Desktop virtuale Azure supporta l'accelerazione GPU (Graphics Processing Unit) nel rendering e nella codifica per migliorare le prestazioni e la scalabilità delle app usando il protocollo RDP (Remote Desktop Protocol). L'accelerazione GPU è fondamentale per le applicazioni a elevato utilizzo di grafica, ad esempio quelle usate da grafici, editor video, modellatori 3D, analisti di dati o specialisti della visualizzazione.

Esistono tre componenti dell'accelerazione GPU in Desktop virtuale Azure che interagiscono per migliorare l'esperienza utente:

  • Rendering dell'applicazione con accelerazione GPU: usare la GPU per eseguire il rendering della grafica in una sessione remota.

  • Codifica dei fotogrammi remoti con accelerazione GPU: il protocollo Desktop remoto codifica tutti gli elementi grafici sottoposti a rendering per la trasmissione al dispositivo locale. La codifica dei fotogrammi remoti con accelerazione GPU usa la GPU per codificare i fotogrammi grafici sottoposti a rendering per offrire frequenze di fotogrammi più elevate ed esperienze utente migliori, anche se questa funzionalità può consumare più larghezza di banda di rete e risorse client e host sessione. Ciò offre vantaggi ad applicazioni come la modellazione 3D, CAD/CAM o la riproduzione e la modifica di video. È possibile scegliere di codificare con:

    • AVC/H.264
    • Hight Efficiency Video Coding (HEVC), noto anche come H.265. Ciò consente una compressione dei dati migliore del 25-50% rispetto a AVC/H.264, con la stessa qualità video o una qualità migliorata alla stessa velocità in bit.

Nota

  • Se si abilita l'accelerazione hardware sia HEVC/H.265 che AVC/H.264, ma il codec HEVC/H.265 non è disponibile nel dispositivo locale o l'ambiente non soddisfa i prerequisiti per HEVC/H.265, viene invece usato AVC/H.264.

  • È possibile abilitare la codifica video a schermo intero con AVC/H.264 anche senza accelerazione GPU, ma HEVC/H.265 richiede una macchina virtuale remota compatibile abilitata per GPU.

  • È anche possibile aumentare il valore di crominanza predefinito per migliorare la qualità dell'immagine.

Questo articolo illustra le dimensioni delle macchine virtuali di Azure che è possibile usare come host di sessione con accelerazione GPU e come abilitare l'accelerazione GPU per il rendering e la codifica.

Dimensioni di macchine virtuali di Azure ottimizzate per GPU supportate

La tabella seguente elenca le dimensioni delle macchine virtuali di Azure ottimizzate per l'accelerazione GPU e supportate come host di sessione in Desktop virtuale Azure:

Dimensioni della macchina virtuale di Azure Rendering dell'applicazione con accelerazione GPU Codifica dei fotogrammi remoti con accelerazione GPU
Serie NVv3 Supportato HEVC/H.265
AVC/H.264
Serie NVv4 Supportato AVC/H.264
Serie NVadsA10 v5 Supportato HEVC/H.265
AVC/H.264
serie NCasT4_v3 Supportato HEVC/H.265
AVC/H.264

La scelta corretta delle dimensioni della macchina virtuale dipende da molti fattori, inclusi i carichi di lavoro specifici dell'applicazione, la qualità desiderata dell'esperienza utente e i costi. In generale, le GPU più grandi e più capaci offrono un'esperienza utente migliore a una determinata densità utente. Dimensioni GPU più piccole e frazionarie consentono un controllo più granulare sui costi e sulla qualità.

Le dimensioni delle macchine virtuali con una GPU NVIDIA sono disponibili con una licenza GRID che supporta 25 utenti simultanei.

Importante

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

Prerequisiti

Prima di abilitare l'accelerazione GPU, è necessario:

Inoltre, per l'accelerazione hardware HEVC/H.265 sono necessari anche:

  • Gli host di sessione devono eseguire Windows 10 o Windows 11.

  • Un gruppo di applicazioni desktop. RemoteApp non è supportato.

  • Se il valore della crominanza è stato aumentato a 4:4:4, il valore della crominanza torna a 4:2:0 quando si usa l'accelerazione hardware HEVC.

  • Disabilitare il reindirizzamento multimediale negli host di sessione disinstallando il componente host.

  • Modello amministrativo per Desktop virtuale Azure disponibile in Criteri di gruppo per configurare gli host sessione.

  • Un dispositivo Windows locale usato per connettersi a una sessione remota deve avere:

    • GPU con supporto per la decodifica HEVC (H.265) 4K YUV 4:2:0. Per altre informazioni, vedere la documentazione del produttore. Ecco alcuni collegamenti alla documentazione per alcuni produttori:

    • Codec HEVC Microsoft installato. Questo può essere ottenuto in 1 di 3 modi:

      • Il codec MICROSOFT HEVC è incluso nelle nuove installazioni di Windows 11 22H2 o versioni successive.
      • È possibile acquistare il codec MICROSOFT HEVC da Microsoft Store.
      • Se si usa Windows App versione 2.0.503.0 o successiva e non è già installato il codec Microsoft HEVC, l'app tenta di installare una versione specializzata del codec HEVC compatibile solo con le sessioni remote avviate tramite Windows App. Si noti che questo metodo richiede l'accesso a Microsoft Store.
    • Una delle app seguenti per connettersi a una sessione remota. Altre piattaforme e versioni non sono supportate.

      • Windows App in Windows versione 2.0.503.0 o successiva.
      • App Desktop remoto in Windows, versione 1.2.6081 o successiva.

Installare i driver di grafica supportati negli host di sessione

Per sfruttare le funzionalità GPU delle macchine virtuali serie N di Azure in Desktop virtuale Azure, è necessario installare i driver grafici appropriati. Per informazioni su come installare i driver, seguire le istruzioni riportate in Sistemi operativi e driver supportati .

Importante

Sono supportati solo i driver distribuiti in Azure.

Quando si installano i driver, ecco alcune linee guida importanti:

  • Per le dimensioni delle macchine virtuali con una GPU NVIDIA, solo i driver NVIDIA GRID supportano l'accelerazione GPU per la maggior parte delle applicazioni e l'interfaccia utente di Windows. I driver CUDA NVIDIA non supportano l'accelerazione GPU per queste dimensioni di VM. Per scaricare e apprendere come installare il driver, vedere Installare i driver NVIDIA GPU in macchine virtuali serie N che eseguono Windows e assicurarsi di installare il driver GRID. Se si installa il driver usando l'estensione del driver NVIDIA GPU, il driver GRID viene installato automaticamente per queste dimensioni di macchina virtuale.

    • Per l'accelerazione hardware HEVC/H.265, è necessario usare il driver NVIDIA GPU GRID 16.2 (537.13) o versione successiva.
  • Per le dimensioni delle macchine virtuali con una GPU AMD, installare i driver AMD forniti da Azure. Per scaricare e informazioni su come installare il driver, vedere Installare i driver GPU AMD in macchine virtuali serie N che eseguono Windows.

Abilitare il rendering dell'applicazione con accelerazione GPU e la codifica dei fotogrammi remoti

Per impostazione predefinita, il rendering delle sessioni remote di Desktop virtuale Azure viene eseguito con la CPU e non si usano GPU disponibili. È possibile abilitare il rendering dell'applicazione con accelerazione GPU e la codifica dei fotogrammi remoti usando Microsoft Intune o Criteri di gruppo.

Importante

Se le impostazioni per l'accelerazione GPU con H.264/AVC e H.265/HEVC sono abilitate, H.265/HEVC ha la priorità per le sessioni remote compatibili.

Selezionare la scheda pertinente per lo scenario.

Per abilitare il rendering delle applicazioni con accelerazione GPU usando Intune:

  1. Accedere all'Interfaccia di amministrazione di Microsoft Intune.

  2. Creare o modificare un profilo di configurazione per i dispositivi Windows 10 e versioni successive, con il tipo di profilo del catalogo Impostazioni.

  3. Nella selezione impostazioni passare a Modelli> amministrativiComponenti> di Windows Ambientesessione remota host > sessione Desktopremoto di Servizi>Desktop remoto.

    Screenshot che mostra le opzioni di reindirizzamento nel portale di Microsoft Intune.

  4. Selezionare le seguenti impostazioni:

    1. Per il rendering delle applicazioni con accelerazione GPU, selezionare la casella Usa schede grafiche hardware per tutte le sessioni di Servizi Desktop remoto.

    2. Per la codifica dei fotogrammi remoti con accelerazione GPU con H.264/AVC:

      1. Selezionare la casella per Assegnare priorità alla modalità grafica H.264/AVC 444 per le connessioni Desktop remoto.
      2. Selezionare la casella Configura codifica hardware H.264/AVC per le connessioni Desktop remoto.

    Nota

    Se si seleziona la casella per assegnare priorità alla modalità grafica H.264 senza selezionare la casella Configura codifica hardware , è possibile che la codifica video a schermo intero H.264/AVC sia basata su software/CPU.

  5. Per la codifica dei frame remoti con accelerazione GPU con H.265/HEVC, passare a Modelli> amministrativiComponenti> di Windows ServiziDesktop>remoto Host> sessione Desktop remotoDesktop virtuale Azure nella selezione delle impostazioni.

  6. Per abilitare la codifica dei fotogrammi remoti con accelerazione GPU usando H.265/HEVC, selezionare la casella Configura codifica hardware H.265/HEVC per Desktop remoto Connections, quindi chiudere la selezione impostazioni.

  7. Espandere la categoria Modelli amministrativi , quindi impostare l'interruttore per ogni impostazione come indicato di seguito:

    1. Per il rendering delle applicazioni con accelerazione GPU, impostare Usa schede grafiche hardware per tutte le sessioni di Servizi Desktop remoto su Abilitato.

    2. Per la codifica dei fotogrammi remoti con accelerazione GPU con H.264/AVC, impostare Configura codifica hardware H.264/AVC per le connessioni Desktop remoto su Abilitato.

    3. Per la codifica video a schermo intero, impostare Priorità della modalità grafica H.264/AVC 444 per connessioni Desktop remoto su Abilitato.

    4. Per la codifica dei fotogrammi remoti con accelerazione GPU usando H.265/HEVC impostare Configurare la codifica hardware H.265/HEVC per Desktop remoto Connections su Abilitato.

  8. Seleziona Avanti.

  9. Facoltativo: nella scheda Tag ambito selezionare un tag di ambito per filtrare il profilo. Per altre informazioni sui tag degli ambiti, vedere Usare il controllo degli accessi in base al ruolo e i tag di ambito per l'IT distribuito.

  10. Nella scheda Assegnazioni selezionare il gruppo contenente i computer che forniscono una sessione remota da configurare, quindi selezionare Avanti.

  11. Nella scheda Rivedi e crea esaminare le impostazioni e quindi selezionare Crea.

  12. Dopo aver applicato i criteri ai computer che forniscono una sessione remota, riavviarli per rendere effettive le impostazioni.

Verificare l'accelerazione GPU

Per verificare che una sessione remota usi l'accelerazione GPU, il rendering dell'applicazione con accelerazione GPU, la codifica dei fotogrammi o la codifica video a schermo intero:

  1. Se si vuole verificare l'accelerazione hardware HEVC/H.265, completare i passaggi aggiuntivi seguenti:

    1. Verificare che nel dispositivo Windows locale sia installato il codec Microsoft HEVC aprendo un prompt di PowerShell ed eseguire il comando seguente:

      Get-AppxPackage -Name "Microsoft.HEVCVideoExtension" | FT Name, Version
      

      L'output deve essere simile all'output seguente:

      Name                         Version
      ----                         -------
      Microsoft.HEVCVideoExtension 2.1.1161.0
      
    2. Assicurarsi che il reindirizzamento multimediale sia disabilitato nell'host di sessione se lo si usa.

  2. Connettersi a uno degli host di sessione configurati, tramite Desktop virtuale Azure o una connessione RDP diretta.

  3. Aprire un'applicazione che usa l'accelerazione GPU e generare un carico per la GPU.

  4. Aprire Gestione attività e passare alla scheda Prestazioni . Selezionare la GPU per verificare se la GPU viene usata dall'applicazione.

    Screenshot che mostra l'utilizzo della GPU in Gestione attività in una sessione desktop remoto.

    Consiglio

    Per le GPU NVIDIA, è anche possibile usare l'utilità per verificare l'utilizzo nvidia-smi della GPU durante l'esecuzione dell'applicazione. Per altre informazioni, vedere Verificare l'installazione del driver.

  5. Per verificare la codifica a schermo intero con accelerazione GPU usando HEVC/H.265, è possibile aprire la finestra Informazioni di connessione dalla sessione.

    1. Se la sessione è in modalità schermo intero, selezionare l'icona della potenza del segnale nella barra di connessione RDP nella parte superiore della finestra della sessione. Se la sessione è in modalità finestra, fare clic con il pulsante destro del mouse nella parte superiore della finestra e scegliere Informazioni di connessione dal menu di scelta rapida.

    2. Selezionare "Visualizza dettagli" per espandere la finestra con informazioni aggiuntive. Se vengono visualizzati codec usati: HEVC in Dettagli della grafica, è in uso la codifica dei fotogrammi con accelerazione GPU con HEVC/H.265 e la codifica video a schermo intero.

  6. È possibile usare Visualizzatore eventi per verificare l'accelerazione GPU con AVC/H.264 o HEVC/H.265. A tale scopo, aprire Visualizzatore eventi dal menu Start oppure eseguire eventvwr.msc dalla riga di comando.

  7. Passare a una delle posizioni seguenti:

    1. Per le connessioni tramite Desktop virtuale Azure, passare a Registri >applicazioni e serviziMicrosoft >Windows>RemoteDesktopServices-RdpCoreCDV> Operational.

    2. Per le connessioni tramite una connessione RDP diretta, passare aRegistri> applicazioni e servizi Microsoft >Windows>RemoteDesktopServices-RdpCoreTs>Operational.

  8. Cercare gli ID evento seguenti:

    • ID evento 170: se viene visualizzato il codificatore hardware AVC abilitato: 1 nel testo dell'evento, è in uso la codifica frame con accelerazione GPU.

    • ID evento 162:

      • Se nel testo dell'evento viene visualizzato Avc444FullScreenProfile , è in uso la codifica dei fotogrammi con accelerazione GPU con AVC/H.264 e la codifica video a schermo intero.
      • Se HevcProfile viene visualizzato nel testo dell'evento, è in uso la codifica dei fotogrammi con accelerazione GPU con HEVC/H.265 e la codifica video a schermo intero.

Aumentare il valore di crominanza predefinito per migliorare la qualità dell'immagine.