Implementar dispositivos gráficos con RemoteFX vGPU

Se aplica a: Windows Server 2022, Windows Server 2019, Windows Server 2016 y Microsoft Hyper-V Server 2016

Nota

Debido a los problemas de seguridad, vGPU de RemoteFX está deshabilitado de manera predeterminada en todas las versiones de Windows a partir de la actualización de seguridad del 14 de julio de 2020, y se quitó a partir de la actualización de seguridad del 13 de abril de 2021. Para obtener más información, consulte KB 4570006.

La característica vGPU de RemoteFX permite que varias máquinas virtuales compartan una GPU física. Los recursos de representación y de proceso se comparten dinámicamente entre máquinas virtuales, lo que hace que RemoteFX vGPU sea adecuado para cargas de trabajo de ráfagas elevadas en las que no se requieren recursos de GPU dedicados. Por ejemplo, en un servicio VDI, RemoteFX vGPU se puede usar para descargar los costos de representación de aplicaciones en la GPU, lo que reduce la carga de la CPU y mejora la escalabilidad del servicio.

Requisitos de RemoteFX vGPU

Requisitos del sistema del host:

  • Windows Server 2016
  • Una GPU compatible con DirectX 11.0 con controlador compatible con WDDM 1.2.
  • Una CPU que admita traducción de direcciones de segundo nivel (SLAT).

Requisitos de la máquina virtual invitada:

Consideraciones adicionales de las máquinas virtuales invitadas:

  • Las funcionalidades OpenGL y OpenCL solo están disponibles en los invitados que usan Windows 10 o Windows Server 2016.
  • DirectX 11.0 solo está disponible para los invitados que usan Windows 8, o cualquier versión posterior.

Habilitación de RemoteFX vGPU

Para configurar RemoteFX vGPU en el host de Windows Server 2016:

  1. Instale los controladores de gráficos recomendados por el proveedor de la GPU para Windows Server 2016.
  2. Cree una máquina virtual que use un sistema operativo invitado compatible con RemoteFX vGPU. Para más información, consulte Compatibilidad con el adaptador de vídeo 3D (vGPU) de RemoteFX.
  3. Agregue la tarjeta gráfica 3D de RemoteFX a la máquina virtual. Para más información, consulte Configuración del adaptador 3D de RemoteFX vGPU.

De forma predeterminada, RemoteFX vGPU usará todas las GPU disponibles y compatibles. Para limitar las GPU que usa RemoteFX vGPU, siga estos pasos:

  1. Ve a la configuración de Hyper-V en el Administrador de Hyper-V.
  2. Seleccione GPU físicas en la configuración de Hyper-V.
  3. Selecciona la GPU que no quieres usar y, a continuación, desactiva Usar esta GPU con RemoteFX.

Configuración de la tarjeta gráfica 3D de RemoteFX vGPU

Puedes usar cmdlets de la interfaz de usuario del Administrador de Hyper-V o de PowerShell para configurar la tarjeta gráfica 3D de RemoteFX vGPU.

Configuración de RemoteFX vGPU con el Administrador de Hyper-V

  1. Detenga la máquina virtual si se está ejecutando.

  2. Abra el Administrador de Hyper-V, vaya a Configuración de la VM y, después, haga clic en Agregar hardware.

  3. Seleccione Tarjeta gráfica 3D de RemoteFX y, después, Agregar.

  4. Establece el número máximo de monitores, la resolución máxima de monitor y la memoria de vídeo dedicada, o bien, deja los valores predeterminados.

    Nota

    • La configuración de valores más elevados para cualquiera de estas opciones afectará a la escalabilidad del servicio, por lo que solo debería configurar lo que sea necesario.
    • Si necesita usar 1 GB de VRAM dedicada, use una máquina virtual invitada de 64 bits, en lugar de 32 bits (x86), para obtener los mejores resultados.
  5. Seleccione Aceptar para finalizar la configuración.

Configuración de RemoteFX vGPU con cmdlets de PowerShell

Ejecuta los siguientes cmdlets de PowerShell para agregar, examinar y configurar el adaptador:

Supervisión del rendimiento

El rendimiento y el escalado de un servicio habilitado para RemoteFX vGPU se determinan mediante una serie de factores como el número de GPU, el total de memoria de la GPU, la cantidad de memoria del sistema y la velocidad de la memoria, el número de núcleos de la CPU y la frecuencia del reloj de la CPU, la velocidad de almacenamiento y la implementación de NUMA.

Memoria del sistema del host

En cada máquina virtual habilitada con una vGPU, RemoteFX usa la memoria del sistema tanto en el sistema operativo invitado como en el servidor host. El hipervisor garantiza la disponibilidad de la memoria del sistema para un sistema operativo invitado. En el host, cada escritorio virtual habilitado para vGPU debe anunciar su requisito de memoria del sistema al hipervisor. Cuando se inicia el escritorio virtual habilitado para vGPU, el hipervisor reserva memoria del sistema adicional en el host.

El requisito de memoria para el servidor habilitado para RemoteFX es dinámico, ya que la cantidad de memoria que se consume en el servidor habilitado para RemoteFX depende del número de monitores asociados a los escritorios virtuales habilitados para vGPU y la resolución máxima de esos monitores.

Memoria de vídeo de GPU de host

Todos los escritorios virtuales habilitados para vGPU usan la memoria de vídeo de hardware de GPU en el servidor host para representar el escritorio. Además, un códec usa la memoria de vídeo para comprimir la pantalla representada. La cantidad de memoria necesaria para la representación y la compresión se basa directamente en el número de monitores aprovisionados en la máquina virtual. La cantidad de memoria reservada de vídeo varía en función de la resolución de pantalla del sistema y del número de monitores que haya. Algunos usuarios requieren mayor resolución de pantalla para tareas concretas, pero si los restantes valores permanecen constantes, cuanto menor sea la resolución mayor será la escalabilidad.

CPU de host

El hipervisor programa el host y las máquinas virtuales en la CPU. La sobrecarga aumenta en un host habilitado para RemoteFX porque el sistema ejecuta un proceso adicional (rdvgm.exe) por escritorio virtual habilitado para vGPU. Este proceso usa el controlador de dispositivo gráfico para ejecutar comandos en la GPU. El códec también usa la CPU para comprimir los datos de la pantalla que se deben devolver al cliente.

Más procesadores virtuales significan una mejor experiencia de usuario. Se recomienda asignar al menos dos CPU virtuales por escritorio virtual habilitado para vGPU. También se recomienda usar la arquitectura x64 para escritorios virtuales habilitados para vGPU, ya que el rendimiento de las máquinas virtuales x64 es mejor que el de las máquinas virtuales x86.

Potencia de procesamiento de GPU

Cada escritorio virtual habilitado para vGPU tiene un proceso de DirectX correspondiente que se ejecuta en el servidor host. Este proceso reproduce todos los comandos gráficos que recibe del escritorio virtual de RemoteFX en la GPU física. Es como ejecutar varias aplicaciones de DirectX al mismo tiempo en la misma GPU física.

Normalmente, tanto los dispositivos gráficos como los controladores se ajustan para ejecutar pocas aplicaciones en el escritorio a la vez, pero RemoteFX amplía las GPU para aumentar su número. Las vGPU incluyen contadores de rendimiento que miden la respuesta de la GPU a las solicitudes de RemoteFX y le ayudan a asegurarse de que las GPU no se extienden demasiado.

Cuando una GPU tiene pocos recursos, las operaciones de lectura y escritura tardan mucho tiempo en completarse. Los administradores pueden usar contadores de rendimiento para saber cuándo hay ajustar los recursos para evitar el tiempo de inactividad de los usuarios.

Obtenga más información sobre los contadores de rendimiento para supervisar el comportamiento de RemoteFX vGPU en Diagnóstico de problemas de rendimiento de gráficos en Escritorio remoto.