Product Documentation

Aceleración de GPU para sistemas operativos de servidor Windows

Jul 26, 2016

HDX 3D Pro permite que las aplicaciones con muchos gráficos que se ejecutan en sesiones de sistema operativo de servidor Windows se representen en la unidad de procesamiento de gráficos (GPU) del servidor. El traslado de la representación de los gráficos de OpenGL, DirectX, Direct3D y Windows Presentation Foundation (WPF) a la unidad de procesamiento de gráficos (GPU) del servidor permite que no se vea afectado el rendimiento de la unidad central de procesamiento central (CPU) del mismo. Además, el servidor es capaz de procesar más gráficos, dado que la carga de trabajo se divide entre la CPU y la GPU.

Cuando se usa HDX 3D Pro, varios usuarios pueden compartir tarjetas gráficas. Cuando se usa HDX 3D Pro junto con XenServer GPU Passthrough, un único servidor aloja varias tarjetas gráficas, una para cada máquina virtual.

Uso compartido de GPU para las cargas de trabajo de RDS

El uso compartido de GPU permite la generación por hardware de GPU de aplicaciones OpenGL y DirectX en las sesiones de escritorio remoto. El uso compartido de GPU tiene las siguientes características:

  • Se puede usar en máquinas físicas o virtuales para aumentar el rendimiento y la escalabilidad de las aplicaciones.
  • Permite que varias sesiones simultáneas compartan los recursos de la GPU. (La mayoría de los usuarios no necesitan el rendimiento de generación de una GPU dedicada.)
  • No necesita ninguna configuración especial.
Tarjetas gráficas

Es posible instalar varias GPU en el hipervisor y asignar, una a una, diversas VM a cada GPU:

  • Instale una tarjeta gráfica con más de una GPU.
  • Otra opción es instalar varias tarjetas gráficas con una o más GPU cada una.

    No se recomienda combinar tarjetas gráficas heterogéneas en un servidor.

Nota: Las máquinas virtuales requieren acceso de PassThrough directo a una GPU, que está disponible con Citrix XenServer o VMware vSphere. Cuando se usa HDX 3D Pro junto con la función GPU Passthrough, cada GPU en el servidor da respaldo a una máquina virtual con varios usuarios.

El uso compartido de GPU no depende de ninguna tarjeta gráfica específica.

  • Al ejecutar en un hipervisor, seleccione una plataforma de hardware y tarjetas gráficas que sean compatibles con la implementación de la función GPU Passthrough del hipervisor. La lista de hardware que ha aprobado la certificación con XenServer GPU Passthrough se encuentra disponible en Dispositivos de GPU Passthrough.
  • Cuando se ejecuta directamente sobre el hardware ("bare metal") se recomienda contar con un único adaptador de pantalla habilitado por el sistema operativo. Si hay varias GPU instaladas en el hardware, inhabilite todas menos una usando el Administrador de dispositivos.

Escalabilidad

La escalabilidad mediante el uso compartido de GPU depende de los siguientes factores:

  • Las aplicaciones que se ejecuten
  • La cantidad de memoria RAM de vídeo que consuman
  • La capacidad de procesamiento de la tarjeta gráfica

Por ejemplo, se ha observado una posibilidad de ampliación de un rango entre 8 a 10 usuarios en tarjetas NVIDIA Q6000 y M2070Q que ejecutan aplicaciones como ESRI ArcGIS. Estas tarjetas ofrecen 6 GB de memoria RAM de vídeo. Las tarjetas NVIDIA GRID más nuevas ofrecen 8 GB de RAM de vídeo y una capacidad de procesamiento significativamente mayor (más núcleos CUDA). Con las tarjetas NVIDIA GRID K2, se ha observado un buen rendimiento con hasta 20 usuarios por tarjeta GRID K2. Otras aplicaciones pueden ampliarse mucho más, alcanzando 32 usuarios simultáneos en una GPU de alta gama.

Nota: Algunas aplicaciones gestionan mejor que otras la falta de memoria RAM de vídeo. Si el hardware se vuelve extremadamente sobrecargado, esto puede provocar inestabilidad o incluso el bloqueo del controlador de la tarjeta gráfica. Limite el número de usuarios simultáneos para evitar esos problemas.

Para confirmar que está teniendo lugar la aceleración por GPU, use una herramienta de terceros, como GPU-Z. GPU-Z está disponible en http://www.techpowerup.com/gpuz/.

Presentación de DirectX, Direct3D y WPF

La presentación de DirectX, Direct3D y WPF está solo disponible en servidores con una GPU que admita una interfaz de control de presentación (DDI), versión 9ex, 10 u 11.

  • En Windows Server 2008 R2, DirectX y Direct3D no requieren ninguna configuración especial para usar una única GPU.
  • En Windows Server 2012, las sesiones de Servicios de Escritorio remoto (RDS) en el servidor host de sesión de Escritorio remoto usan el Controlador de representación básica de Microsoft como el adaptador predeterminado. Para usar la GPU en sesiones de RDS en Windows Server 2012, habilite la configuración Usar el adaptador de gráficos de hardware predeterminado para todas las sesiones de Servicios de Escritorio remoto en la directiva de grupo Directiva de equipo local > Configuración del equipo > Plantillas administrativas > Componentes de Windows > Servicios de Escritorio remoto > Host de sesión de Escritorio remoto > Entorno de sesión remota.
  • Para habilitar las aplicaciones WPF para que representen gráficos mediante la GPU del servidor, cree los siguientes parámetros en el Registro de Windows del servidor que ejecuta sesiones de SO de servidor Windows:
    • [ HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\CtxHook\AppInit_Dlls\ Multiple Monitor Hook] "EnableWPFHook"=dword:00000001
    • [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\CtxHook\AppInit_Dlls\ Multiple Monitor Hook] "EnableWPFHook"=dword:00000001

Aceleración de GPU experimental para aplicaciones OpenCL o CUDA

Esta versión también ofrece respaldo experimental para aceleración de GPU para aplicaciones OpenCL y CUDA que se ejecutan en una sesión de usuario. De forma predeterminada, este respaldo se encuentra inhabilitado, pero puede habilitarlo para realizar pruebas y evaluaciones.
Advertencia: Si modifica el Registro de forma incorrecta, podrían generarse problemas graves que pueden provocar la reinstalación del sistema operativo. Citrix no puede garantizar que los problemas derivados de la utilización inadecuada del Editor del registro puedan resolverse. Si utiliza el Editor del Registro, será bajo su propia responsabilidad. Asegúrese de hacer una copia de seguridad del registro antes de modificarlo.
  1. Para usar las funciones de aceleración de CUDA experimental, habilite los siguientes parámetros de Registro:
    • [HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\CtxHook\AppInit_Dlls\Graphics Helper] "CUDA"=dword:00000001
    • [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\CtxHook\AppInit_Dlls\Graphics Helper] "CUDA"=dword:00000001
  2. Para usar las funciones de aceleración de OpenCL experimental, habilite los siguientes parámetros de Registro:
    • [HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\CtxHook\AppInit_Dlls\Graphics Helper] "OpenCL"=dword:00000001
    • [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\CtxHook\AppInit_Dlls\Graphics Helper] "OpenCL"=dword:00000001