Decisión de diseño: La economía de ofrecer Citrix DaaS en Azure en AMD Compute

Overview

Este documento es un esfuerzo conjunto de Microsoft, Citrix y AMD para ayudar a los consumidores a tomar mejores decisiones a la hora de seleccionar los tipos de instancias en Azure para alojar sus cargas de trabajo de Citrix. Los objetivos de este documento incluyen determinar los tipos de instancias más eficientes para alojar cargas de trabajo de Citrix DaaS y proporcionar orientación a los clientes a la hora de seleccionar instancias de procesamiento de AMD, con o sin GPU, en Azure.

Plataforma Azure

Azure es el entorno de nube de Microsoft en el que los activos físicos, como ordenadores, unidades de disco y redes, se virtualizan y están disponibles en línea o mediante conexiones directas a los centros de datos de Microsoft de todo el mundo. Cada ubicación del centro de datos se encuentra en una región. Hay regiones disponibles en todo el continente con regiones específicas para el acceso de los gobiernos. Cada región es un conjunto de zonas aisladas unas de otras dentro de la región. Esta distribución de recursos proporciona varios beneficios, incluida la redundancia en caso de error y la reducción de la latencia al ubicar los recursos más cerca de los clientes.

Al aprovisionar las cargas de trabajo de escritorios y aplicaciones de Citrix en Microsoft Azure, las empresas pueden evitar los gastos de infraestructura interna y, en cambio, confiar en Azure para proporcionar los recursos informáticos, de redes y de almacenamiento necesarios para las cargas de trabajo de los usuarios.

Escritorio como servicio (DaaS) de Citrix

Citrix Desktop as a Service (DaaS) asegura la entrega de aplicaciones y escritorios Windows, Linux, Web y SaaS a cualquier dispositivo, lo que potencia el espacio de trabajo digital moderno de hoy en día. Citrix DaaS proporciona administración y escalabilidad avanzadas, una rica experiencia multimedia en cualquier red y aplicaciones de autoservicio con soporte universal para dispositivos en una amplia gama de terminales, incluidos escritorios, portátiles, clientes ligeros, tabletas y teléfonos inteligentes.

Con las tecnologías de virtualización de aplicaciones y escritorios, es fácil para los clientes administrar los recursos de forma centralizada y aplicar la combinación óptima de modelos de entrega locales y alojados para cumplir con los requisitos de los usuarios. Los recursos hospedados se pueden aprovisionar en Microsoft Azure para escenarios de sesión única y multisesión.

Como solución de nube híbrida, Citrix DaaS permite a las organizaciones elegir la opción de implementación de cargas de trabajo que mejor se adapte a su estrategia de nube empresarial. Cuando se implementa en la plataforma Microsoft Azure, Citrix DaaS brinda a los departamentos de TI la flexibilidad de brindar servicios de infraestructura para aplicaciones y escritorios de Windows y Linux con la escala elástica de la nube pública. Al mismo tiempo, las organizaciones también pueden integrar uno o más entornos locales para lograr una flexibilidad óptima.

Citrix DaaS está alojado en Citrix Cloud, un plano de control de servicios que se ejecuta en Microsoft Azure. Se utiliza en esta serie de pruebas para controlar y gestionar las cargas de trabajo. Estas cifras se centran en la escalabilidad y el rendimiento de una única instancia de máquina virtual que ejecuta el sistema operativo multisesión Virtual Delivery Agent (VDA) de Citrix en Windows Server 2019 y Windows 10 Multisession. Para obtener más información sobre Citrix DaaS, haga clic aquí.

Microdispositivos avanzados (AMD)

AMD es líder en computación de alto rendimiento y ofrece tecnologías para acelerar una gama completa de cargas de trabajo de centros de datos, desde la computación de uso general hasta la computación nativa de la nube.
Todas las instancias probadas en este documento ejecutaron procesadores y tarjetas gráficas AMD en Microsoft Azure.

Los procesadores AMD EPYC™ impulsan los servidores x86 más eficientes desde el punto de vista energético y ofrecen un rendimiento y una densidad excepcionales para reducir los costes de energía de los servidores. Las CPU AMD EPYC™ ayudan a minimizar los impactos ambientales de las operaciones del centro de datos y, al mismo tiempo, promueven los objetivos de sostenibilidad de la empresa. El AMD EPYC™ también viene con una función todo en uno para cada serie de procesadores, por lo que tienes la E/S, la memoria y el ancho de banda de memoria para cumplir tus objetivos, independientemente de la cantidad de núcleos que elijas.

Las instancias DAS_v5 de este estudio utilizan el procesador AMD EPYC™ 7763v de tercera generación en una configuración de subprocesos múltiples con una caché L3 de hasta 256 MB. Estas máquinas virtuales ofrecen una combinación de vCPU y memoria para cumplir con los requisitos asociados a las cargas de trabajo de Citrix DaaS.

Las instancias de la serie NVV4 de este estudio utilizan la GPU Radeon™ Instinct™ MI25 de AMD y están optimizadas para la VDI y la visualización remota. La GPU MI25 admite el paso a través de la virtualización de E/S de raíz única (SR-IOV), que ofrece la posibilidad de compartir de forma segura una GPU con hasta 8 huéspedes de máquinas virtuales mediante la multiplexación por intervalos de tiempo. Al compartir la GPU con varias máquinas virtuales, cada huésped aprovecha al máximo la GPU durante unos milisegundos, varias veces por segundo. NVv4 ofrece el tamaño adecuado para cargas de trabajo que requieren asignaciones de GPU grandes y pequeñas.

Las instancias de la serie NVV4 vienen en 4 tamaños diferentes:

Tamaño vCPU GPU Memoria de GPU (GB) Memoria (GB)
NV4as_v4 4 1/8 2 14
NV8as_v4 8 1/4 4 28
NV16as_v4 16 1/2 8 56
NV32as_v4 32 1 16 112

Fuente: https://learn.microsoft.com/en-us/azure/virtual-machines/nvv4-series

Metodología de pruebas

La carga se simuló durante la ejecución de la prueba con Login Enterprise para generar una carga de trabajo artificial en la sesión de usuario en un único host. Los datos de la ejecución de la prueba se utilizaron luego para analizar la escalabilidad de diferentes instancias de Microsoft Azure de AMD.

Iniciar sesión Enterprise

Login VSI ayuda a las organizaciones a gestionar de forma proactiva el rendimiento, el coste y la capacidad de sus escritorios y aplicaciones virtuales. La plataforma Login Enterprise no tiene agentes al 100% y se puede utilizar en los principales entornos de VDI y DaaS, incluidos Citrix y Microsoft. Con Login VSI, los equipos de TI pueden planificar y mantener lugares de trabajo digitales exitosos con menos costes, menos interrupciones y menos riesgos.

El dispositivo Login Enterprise proporciona dos puntuaciones que ayudan a determinar el número recomendado de usuarios para la instancia:

Puntuación de experiencia del usuario final (EUX): La puntuación EUX cuantifica la experiencia del usuario en su sesión virtual mediante métricas y contadores de rendimiento recopilados durante la sesión. Las puntuaciones EUX oscilan entre 1,0 (la peor experiencia) y 10,0 (la mejor experiencia). En términos generales, las puntuaciones inferiores a 5.5 indican que la experiencia del usuario es inaceptable.

Máximo de usuarios recomendados (VSImax): El proceso de puntuación de VSImax implica el uso de métricas de sesión individuales para determinar la cantidad de usuarios simultáneos que pueden ejecutar una carga de trabajo determinada en el host. El valor de vSImax utilizado en Login Enterprise no es comparable con las puntuaciones de vSImax de las versiones anteriores de Login VSI Classic.

Los algoritmos que generan los valores de EUX y vSImax pueden cambiar de una versión a otra a medida que Login VSI se esfuerza por ofrecer resultados más precisos. Para mantener resultados consistentes para la comparación en este estudio, todas las pruebas se completaron con la misma versión. Una configuración de prueba se consideró correcta cuando la ejecución de la prueba se completó sin errores y se recibió el mismo valor de vSImax de manera constante al menos tres veces.

Cargas de trabajo

Se utilizaron dos cargas de trabajo diferentes para evaluar la escalabilidad de los tipos de instancias. La primera carga de trabajo se ejecutó con una resolución de 1080p (1920 x 1080) mediante la carga de trabajo de Knowledge Worker de Login Enterprise, simulando un usuario robusto de Microsoft Office. Knowledge Worker es la carga de trabajo más utilizada para evaluar la escalabilidad. Esta carga de trabajo incluye las siguientes aplicaciones que se ejecutan en bucle:

Microsoft Word Microsoft PowerPoint Microsoft Outlook Microsoft Excel Microsoft Edge, visualización de un vídeo de 1080p

Las aplicaciones de Office tenían habilitada la aceleración de hardware para que las pruebas aprovecharan las ventajas de la GPU.

La segunda carga de trabajo era una carga de trabajo específica de la GPU creada a medida y ejecutada con una resolución de 4K (3840 x 2160) diseñada para generar ciclos de GPU dentro de la sesión. Esta carga de trabajo personalizada tenía como objetivo determinar la eficacia del uso compartido de la GPU dentro de una sesión. La carga de trabajo consistía únicamente en las dos aplicaciones siguientes:

El valor predeterminado de Citrix es Microsoft Edge, que permite ver un vídeo 4K a 10 fotogramas por segundo (fps). Microsoft 3D Viewer, renderiza cuatro imágenes 3D diferentes de forma secuencial, cambia la velocidad y produce efectos de iluminación.

Dado que las instancias de NV_v4 admiten la codificación por hardware de la GPU, pero no la decodificación, podemos esperar que la parte de vídeo en 4K de la prueba consuma más ciclos de CPU y tarde más que si el host admitiera la decodificación de la GPU por hardware. Las directivas de Citrix se usaron para inhabilitar la redirección de medios, por lo que la GPU no se usó para decodificar. El rendimiento se puede aumentar al habilitar la función de redirección para evitar la decodificación de la CPU en el lado del host.

Varias veces durante una sesión de usuario, una aplicación de puntuación corta ejecuta un conjunto de instrucciones y registra el tiempo que se tarda en ejecutar cada paso. Esas métricas pueden generar la puntuación EUX y el valor de vSImax para la ejecución de la prueba.

Estas puntuaciones se utilizan luego como entrada junto con otros indicadores de rendimiento para generar una puntuación EUX promedio para la prueba. El siguiente gráfico proporciona un ejemplo de puntuación de EUX para una ejecución de 22 usuarios en el tipo de instancia D8as_v5. En esta serie, la puntuación media de EUX fue de 7,4 y la puntuación de VSImax fue superior a 22.

Puntuación EUX

La puntuación máxima teórica de la EUX es de 10. Sin embargo, la puntuación es más útil en comparación con ella misma, ya que utiliza la misma carga de trabajo en diferentes configuraciones de máquinas virtuales o cargas de usuarios. Por ejemplo, el siguiente gráfico muestra el mismo número de usuarios de prueba, 22, pero con una puntuación EUX más baja de 7,3 y un valor de vSImax de 15. Una observación interesante es que la puntuación de EUX disminuyó durante la tormenta de inicios de sesión, pero regresó rápidamente una vez completados los inicios de sesión.

Puntuación EUX

Entorno de pruebas

Para las pruebas de escalabilidad, las máquinas virtuales de infraestructura se configuraron de la siguiente manera:

  • Dispositivo virtual One Login Enterprise que ejecuta la versión 4.11.2.
  • Cuatro lanzadores Login Enterprise
  • Un Citrix Cloud Connector
  • Un controlador de dominio de Active Directory que actuaba como perfil y como servidor DNS
  • Cargas de trabajo de aplicaciones virtuales de Citrix que se ejecutan en una única instancia de centro de datos de Windows Server 2019 o en una única instancia multisesión de Windows 10 con lo siguiente:
    • Sistema operativo multisesión de servidor Citrix VDA 2203.0.2000.2076 (CU2) que se ejecuta en el nivel funcional 2106 (o posterior).
    • Microsoft Office M365 para empresas
    • Microsoft Defender con configuración predeterminada
    • Las últimas actualizaciones de Windows están disponibles en el momento de la prueba
  • Se usaron configuraciones listas para usar a menos que se especificara lo contrario
  • El servicio DaaS de Citrix Cloud proporcionaba y administraba el Delivery Controller, SQL Server, el servicio Workspace (equivalente a StoreFront), el servidor de licencias y la consola de administración de Studio. Se instalaron un controlador de dominio de Active Directory y Cloud Connector por separado en el arrendatario de Azure.

La siguiente figura muestra la arquitectura de prueba.

Arquitectura de laboratorio

Nota:

Este diseño arquitectónico es solo para fines de prueba y no refleja el aspecto de un entorno de producción con componentes redundantes. Los administradores pueden consultar los documentos de mejores prácticas y arquitectura en Citrix Tech Zone.

Resultados de las pruebas de escalabilidad

Para este estudio, nos centramos en los tipos de instancias de AMD entre 4 y 32 vCPU. El principal impulsor de esta decisión fue el coste y la eficiencia. En las directrices sobre el tamaño de la máquina virtual del host de sesión, Microsoft recomienda limitar el tamaño de la máquina virtual a entre 4 y 24 vCPU por los siguientes motivos:

“En el caso de las sesiones múltiples, tener varios usuarios en una máquina virtual de dos núcleos hace que la interfaz de usuario y las aplicaciones se vuelvan inestables, lo que reduce la calidad de la experiencia del usuario. Las máquinas virtuales multisesión estables utilizan al menos cuatro núcleos. «

«32 núcleos es la cantidad máxima para las máquinas virtuales: a medida que aumenta la cantidad de núcleos, también aumenta la sobrecarga de sincronización del sistema. Para la mayoría de las cargas de trabajo, con alrededor de 16 núcleos, el rendimiento de la inversión disminuye, y la mayor parte de la capacidad adicional se compensa con la sobrecarga de sincronización. Es probable que tenga más usuarios en dos máquinas virtuales de 16 núcleos que en una de 32 núcleos»

Con las cargas de trabajo de DaaS, el escalamiento vertical es menos eficiente que el escalado horizontal, por lo que estas pautas tenían mucho sentido y nos permitieron centrar las pruebas en las áreas con las mejores configuraciones para los clientes.

Se probaron seis tipos diferentes de instancias de AMD con dos sistemas operativos diferentes. Dado que la carga de trabajo es idéntica en todos los tipos de instancias, la escalabilidad se puede derivar de los resultados. En la siguiente tabla se muestran las cargas de trabajo que se ejecutan en cada tipo de instancia.

  Windows Server 2019 Windows 10 multisesión
D4as_v5 Conocimientos Conocimientos
D8as_v5 Conocimientos Conocimientos
D16as_v5 Conocimientos Conocimientos
NV8as_v4 Conocimientos Conocimiento, GPU
NV16as_v4 Conocimientos Conocimiento, GPU
NV32as_v4 Conocimientos Conocimiento, GPU

Usuarios esperados

Antes de determinar la rentabilidad de los tipos de instancias de AMD, necesitábamos determinar cuántos usuarios se ejecutan correctamente en un tipo de instancia con una experiencia de usuario ideal. Afortunadamente, la puntuación de vSImax se aproxima en gran medida al número de usuarios que podemos esperar tener cómodamente en una configuración determinada.

Carga de trabajo del trabajador del conocimiento

Empezamos con la carga de trabajo de Knowledge Worker, que es la que proporciona el caso de uso más amplio para Citrix DaaS. En el siguiente gráfico se muestran las puntuaciones finales recibidas para las cargas de trabajo de Windows 10 Multisession y Server 2019 en todos los tipos de instancias probados.

VSI máximo

A partir de estos datos, se pueden extraer las siguientes conclusiones:

La ampliación de los procesadores no proporciona ganancias lineales en el número de usuarios. Según la información anterior sobre la reducción de la eficiencia de la sobrecarga de sincronización, se espera este hallazgo.

Windows 10 Multisession es menos eficiente con los recursos que Server 2019. Se espera este hallazgo, ya que Server 2019 está mejor optimizado para alojar varios usuarios. El uso de instancias de la serie NV con GPU no aumenta la cantidad de usuarios. Este hallazgo también es de esperar debido a la sobrecarga de GPU agregada a la CPU.

Siguiendo con esa línea de pensamiento, el gráfico muestra claramente que, a medida que aumenta la cantidad de vCPU en el tipo de instancia, la cantidad de usuarios por vCPU disminuye. La conclusión con los procesadores AMD es que escalar hacia fuera es mejor que hacia arriba, ya que se obtienen más usuarios en máquinas más pequeñas que en la cantidad equivalente de vCPU en una máquina más grande.

Usuarios por vCPU

Carga de trabajo intensiva de GPU

Pasamos a las cargas de trabajo intensivas en GPU, donde observamos tendencias similares en torno a los usuarios de vSImax por tipo de instancia. Las cargas de trabajo con uso intensivo de la GPU solo se ejecutaron en las instancias de la serie NV. Los resultados se muestran en el siguiente gráfico.

De estos datos podemos sacar dos de las mismas conclusiones que sacamos para la carga de trabajo de Knowledge Worker.

La ampliación de los procesadores no proporciona ganancias lineales en el número de usuarios. Este resultado es de esperar, ya que la sobrecarga de sincronización es menos eficiente y la serie NV_v4 depende de los ciclos de la CPU para utilizar la GPU. Parte de este impacto se debió al vídeo en 4K, que consumía ciclos de CPU que podrían no descargarse en la GPU porque no se utilizaba la redirección. Windows 10 Multisession es menos eficiente con los recursos que Server 2019. Este hallazgo vuelve a esperarse, ya que Server 2019 está mejor optimizado para alojar a varios usuarios.

Sin embargo, profundizando en los usuarios por vCPU, el siguiente gráfico muestra que no tenemos la misma tendencia lineal con Windows 10 que con Server 2019. En el caso de Windows 10 multisesión, la instancia de 16 vCPU es la más eficaz.

VSI máximo

Costos esperados

Ahora podemos usar el recuento de usuarios esperado dividido entre el coste por hora de la instancia para obtener la métrica del coste por hora de usuario. No todas las regiones tienen estos tipos de instancias disponibles y los precios varían según la región. Los precios utilizados reflejan los costes en la región Azure West US 2 durante agosto de 2023. Para simplificar, para esta comparación solo se utilizaron la tarifa de pago por uso con licencia completa y las tarifas de beneficios híbridos. Si usa planes de ahorro o precios de instancias reservadas de Microsoft, sus costes reales son más bajos.

En el siguiente gráfico se muestra el coste por hora de usuario por sistema operativo y modelo de licencia para cada tipo de instancia de AMD que probamos en la carga de trabajo de Knowledge Worker.

Coste promedio

Dado que los precios de Azure son uniformes para el procesamiento, los costes siguen nuestros gráficos de rendimiento tal y como se esperaba. Nuestro tipo de instancia más eficiente es el que tiene la mejor escalabilidad, la D4as_v5, que cuesta tan solo 1,4 céntimos por hora con el modelo de licencias híbridas y 3 céntimos por hora con el modelo de licencia completa de Windows Server 2019. Se produce un coste similar con la carga de trabajo intensiva de la GPU, ya que la NV8as_v4 tiene el coste más bajo por hora de usuario: 7,8 céntimos por hora con el sistema híbrido y 13,9 céntimos por hora con la licencia completa en Server 2019, como se muestra en el siguiente gráfico.

Coste promedio

Experiencia del usuario final

Nuestro estudio no termina ahí. Aún tenemos que cubrir los aspectos de la experiencia del usuario. El último paso es revisar las puntuaciones de la experiencia del usuario final para determinar las instancias más eficientes en términos de coste y experiencia del usuario. El siguiente gráfico muestra la puntuación media de EUX asociada a las carreras que recibieron la puntuación final de vSImax que publicamos para la carga de trabajo de Knowledge Worker.

Puntuaciones EUX

Una conclusión clara de los datos es que el tipo de instancia más eficiente proporciona las puntuaciones más bajas de las que hemos hecho un seguimiento. Recuerda que antes dijimos que las puntuaciones inferiores a 5,5 proporcionan experiencias de usuario negativas, por lo que una puntuación de 6,8 veces en la D4AS_v5 sigue siendo respetable. Sin embargo, al observar la siguiente columna, vemos que la puntuación media de la EUX aumenta significativamente. Por 0,2 céntimos adicionales por hora, podemos ofrecer a nuestros usuarios finales una mejor experiencia. Si observamos el gráfico de carga de trabajo intensivo de GPU que aparece a continuación, nos encontramos con una situación similar.

Puntuaciones EUX

En este caso, el tipo de instancia NV32AS_v4 proporciona una puntuación general ligeramente mejor que la instancia NV16AS_v4, por lo que, aunque la NV16AS_v4 tiene el rendimiento más eficiente, es posible que no ofrezca la mejor experiencia de usuario final. La puntuación de EUX más baja en la NV16AS_v4 se debe a una mayor densidad de usuarios por núcleo que en los tipos de instancia NV8AS_v4 o NV32AS_v4. Sorprendentemente, Windows 10 Multisession tiene la mejor puntuación para cargas de trabajo con uso intensivo de la GPU con la NV32AS_v4. Probablemente esto se deba a que la NV32AS_v4 tuvo más ciclos de CPU disponibles durante la parte de la prueba de reproducción de vídeo en 4K, ya que no se utilizó la redirección.

Hallazgos y recomendaciones clave

Tras revisar los datos de las pruebas y analizar los resultados, estas son nuestras principales conclusiones y recomendaciones para seleccionar instancias de Azure con tecnología AMD:

Los resultados de nuestras pruebas mostraron que las instancias multisesión de Windows 10 alojaban un 30% menos de usuarios que los sistemas operativos Windows Server (Server 2019 o 2022). Las puntuaciones de la experiencia del usuario final (EUX) se mantuvieron relativamente consistentes en todos los tipos de sistemas operativos. Si bien el tipo de instancia más rentable para el trabajador del conocimiento es el D4as_v5, la recomendación es usar el tipo de instancia D8as_v5 y aprovechar la mejor experiencia de usuario por una fracción de centavo más por hora.

Una sola GPU se puede compartir de forma eficaz en varias sesiones. Sin embargo, determinar qué tipo de instancia usar depende principalmente del tipo de carga de trabajo de la GPU.

Conclusión

Como siempre, te recomendamos que realices tus propias pruebas de rendimiento con cargas de trabajo específicas de tu empresa. Supongamos que tiene una visión limitada de su carga de trabajo o de los tipos de instancias con los que acabará finalmente. En ese caso, puede utilizar la información que le proporcionamos para hacer una estimación adecuada. Por lo general, los tipos de instancias de vCPU inferiores proporcionan un mejor equilibrio entre coste y rendimiento.

Decisión de diseño: La economía de ofrecer Citrix DaaS en Azure en AMD Compute