Décision de conception : les avantages économiques de la fourniture de Citrix DaaS dans Azure sur AMD Compute

Vue d’ensemble

Ce document est le fruit d’une collaboration entre Microsoft, Citrix et AMD afin d’aider les utilisateurs à prendre de meilleures décisions quant à la sélection des types d’instances dans Azure pour héberger leurs charges de travail Citrix. Les objectifs de ce document sont notamment de déterminer les types d’instances les plus efficaces pour héberger les charges de travail Citrix DaaS et de fournir des conseils aux clients lors de la sélection d’instances de calcul AMD, avec ou sans GPU, dans Azure.

Plateforme Azure

Azure est l’environnement cloud de Microsoft dans lequel les actifs physiques, tels que les ordinateurs, les lecteurs de disque et les réseaux, sont virtualisés et mis à disposition en ligne ou via des connexions directes aux centres de données Microsoft du monde entier. Chaque centre de données se trouve dans une région. Les régions sont disponibles sur tout le continent avec des régions dédiées pour l’accès du gouvernement. Chaque région est un ensemble de zones isolées les unes des autres au sein de la région. Cette répartition des ressources présente plusieurs avantages, notamment la redondance en cas de panne et la réduction de la latence en localisant les ressources plus près des clients.

En provisionnant les charges de travail des postes de travail et des applications Citrix sur Microsoft Azure, les entreprises peuvent éviter les dépenses liées à l’infrastructure interne et s’appuyer sur Azure pour fournir les ressources de calcul, de réseau et de stockage nécessaires aux charges de travail des utilisateurs.

Citrix Desktop en tant que service (DaaS)

Citrix Desktop as a Service (DaaS) sécurise la diffusion d’applications et de bureaux Windows, Linux, Web et SaaS sur n’importe quel appareil, renforçant ainsi l’espace de travail numérique moderne d’aujourd’hui. Citrix DaaS fournit une gestion et une évolutivité avancées, une expérience multimédia riche sur n’importe quel réseau et des applications en libre-service avec prise en charge universelle des appareils sur une gamme complète de terminaux, notamment des ordinateurs de bureau, des ordinateurs portables, des clients légers, des tablettes et des smartphones.

Grâce aux technologies de virtualisation des applications et des postes de travail, les clients peuvent facilement gérer les ressources de manière centralisée et appliquer la combinaison optimale de modèles de distribution locaux et hébergés pour répondre aux besoins des utilisateurs. Les ressources hébergées peuvent être mises en service sur Microsoft Azure pour des scénarios à session unique et à sessions multiples.

En tant que solution cloud hybride, Citrix DaaS permet aux entreprises de choisir l’option de déploiement de la charge de travail qui correspond le mieux à leur stratégie cloud d’entreprise. Lorsqu’il est déployé sur la plateforme Microsoft Azure, Citrix DaaS offre aux services informatiques la flexibilité nécessaire pour fournir des services d’infrastructure pour les applications et les postes de travail Windows et Linux avec l’échelle élastique du cloud public. Dans le même temps, les entreprises peuvent également intégrer un ou plusieurs environnements sur site pour une flexibilité optimale.

Citrix DaaS est hébergé dans Citrix Cloud, un plan de contrôle de services exécuté au sein de Microsoft Azure. Il est utilisé dans cette série de tests pour contrôler et gérer les charges de travail. Les chiffres présentés ici se concentrent sur l’évolutivité et les performances d’une instance de machine virtuelle unique exécutant le Virtual Delivery Agent (VDA) du système d’exploitation multisession de Citrix sur Windows Server 2019 et Windows 10 multisession. Pour en savoir plus sur Citrix DaaS, rendez-vous ici.

Micro-appareils avancés (AMD)

AMD est un leader du calcul haute performance et fournit des technologies permettant d’accélérer une gamme complète de charges de travail des centres de données, de l’informatique polyvalente à l’informatique native du cloud.
Toutes les instances testées dans ce document exécutaient des processeurs et des cartes graphiques AMD dans Microsoft Azure.

Les processeurs AMD EPYC™ équipent les serveurs x86 les plus économes en énergie, offrant des performances et une densité exceptionnelles pour réduire les coûts énergétiques des serveurs. Les processeurs AMD EPYC™ contribuent à minimiser l’impact environnemental des opérations des centres de données tout en faisant progresser les objectifs de durabilité de votre entreprise. AMD EPYC™ est également doté d’un ensemble de fonctionnalités tout-en-un pour chaque série de processeurs, afin que vous disposiez des E/S, de la mémoire et de la bande passante mémoire nécessaires pour atteindre vos objectifs, quel que soit le nombre de cœurs que vous choisissez.

Les instances DAS_v5 de cette étude utilisent le processeur AMD EPYC™ 7763v de troisième génération dans une configuration multithread avec jusqu’à 256 Mo de cache L3. Ces machines virtuelles offrent une combinaison de processeurs virtuels et de mémoire pour répondre aux exigences associées aux charges de travail Citrix DaaS.

Les instances de la série NVV4 de cette étude utilisent le GPU Radeon™ Instinct™ MI25 d’AMD et sont optimisées pour la VDI et la visualisation à distance. Le GPU MI25 prend en charge la virtualisation des E/S à racine unique (SR-IOV), qui permet de partager en toute sécurité un GPU avec un maximum de 8 machines virtuelles invitées grâce à un multiplexage par tranches temporelles. Lorsque vous partagez le GPU avec plusieurs machines virtuelles, chaque invité utilise pleinement le GPU pendant quelques millisecondes, plusieurs fois par seconde. Le NVv4 offre la taille idéale pour les charges de travail nécessitant des allocations de GPU importantes et petites.

Les instances de la série NVV4 sont disponibles en 4 tailles différentes :

Taille vCPU Processeur graphique Mémoire GPU (Go) Mémoire (Go)
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

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

Méthodologie de test

La charge a été simulée lors du test à l’aide de Login Enterprise pour générer une charge de travail artificielle dans la session utilisateur sur un seul hôte. Les données de test ont ensuite été utilisées pour analyser l’évolutivité de différentes instances AMD Microsoft Azure.

Login Enterprise

Login VSI aide les entreprises à gérer de manière proactive les performances, les coûts et les capacités de leurs bureaux virtuels et de leurs applications. La plateforme Login Enterprise est 100 % sans agent et peut être utilisée dans tous les principaux environnements VDI et DaaS, y compris Citrix et Microsoft. Avec Login VSI, les équipes informatiques peuvent planifier et gérer des espaces de travail numériques performants à moindre coût, avec moins de perturbations et moins de risques.

L’appliance Login Enterprise fournit deux scores qui permettent de déterminer le nombre d’utilisateurs recommandé pour l’instance :

Score d’expérience utilisateur final (EUX) : Le score EUX quantifie l’expérience utilisateur au cours de leur session virtuelle à l’aide de mesures et de compteurs de performance collectés au cours de la session. Les scores EUX vont de 1,0 (expérience la plus faible) à 10,0 (meilleure expérience). D’une manière générale, les scores inférieurs à 5,5 indiquent que l’expérience utilisateur est inacceptable.

Nombre maximal d’utilisateurs recommandés (VSImax) : le processus de notation VSImax implique l’utilisation de mesures de session individuelles pour déterminer le nombre d’utilisateurs simultanés pouvant exécuter une charge de travail donnée sur l’hôte. La valeur VSImax utilisée dans Login Enterprise n’est pas comparable aux scores VSImax des versions précédentes de Login VSI Classic.

Les algorithmes qui génèrent les valeurs EUX et VSImax peuvent changer d’une version à l’autre, Login VSI s’efforçant de fournir des résultats plus précis. Afin de maintenir des résultats cohérents à des fins de comparaison dans le cadre de cette étude, tous les tests ont été effectués à l’aide de la même version. Une configuration de test était considérée comme réussie lorsque le test s’est terminé sans échec et que la même valeur VSImax a été reçue de manière cohérente au moins trois fois.

Charges de travail

Deux charges de travail différentes ont été utilisées pour évaluer l’évolutivité des types d’instances. La première charge de travail a été exécutée à une résolution de 1080p (1920 x 1080) à l’aide de la chargede travail Knowledge Worker de Login Enterprise, simulant un utilisateur Microsoft Office robuste. Knowledge Worker est la charge de travail la plus couramment utilisée pour évaluer l’évolutivité. Cette charge de travail inclut les applications suivantes exécutées en boucle :

Microsoft Word Microsoft PowerPoint Microsoft Outlook Microsoft Excel Microsoft Edge, affichage d’une vidéo 1080p

L’accélération matérielle des applications Office était activée pour que les tests puissent tirer parti du GPU.

La deuxième charge de travail était une charge de travail spécifique au GPU créée sur mesure et exécutée à une résolution 4K (3840 x 2160) conçue pour générer des cycles GPU au cours de la session. Cette charge de travail personnalisée visait à déterminer l’efficacité du partage GPU au cours d’une session. La charge de travail comprenait uniquement les deux applications suivantes :

La configuration par défaut de Citrix est Microsoft Edge, qui permet de visionner une vidéo 4K à 10 images par seconde (images par seconde). Microsoft 3D Viewer, qui permet de rendre quatre images 3D différentes de manière séquentielle, de modifier la vitesse et les effets d’éclairage.

Les instances NV_v4 prenant en charge l’encodage matériel GPU mais pas le décodage, nous pouvons nous attendre à ce que la partie vidéo 4K du test consomme plus de cycles CPU et prenne plus de temps que si le décodage GPU matériel était pris en charge sur l’hôte. Les politiques Citrix ont été utilisées pour désactiver la redirection multimédia, de sorte que le GPU n’a pas été utilisé pour le décodage. Les performances peuvent être améliorées en activant la fonction de redirection pour éviter le décodage du processeur côté hôte.

À plusieurs reprises au cours d’une session utilisateur, une application de notation courte exécute un ensemble d’instructions et enregistre le temps nécessaire à l’exécution de chaque étape. Ces mesures peuvent générer le score EUX et la valeur VSImax pour le test.

Ces scores sont ensuite utilisés comme données d’entrée avec d’autres indicateurs de performance pour générer un score EUX moyen pour le test. Le graphique suivant fournit un exemple de score EUX pour une exécution de 22 utilisateurs sur le type d’instance D8as_v5. Lors de cette série, le score EUX moyen était de 7,4 et le score VSImax était supérieur à 22.

Score EUX

Le score EUX maximal théorique est de 10. Toutefois, le score est particulièrement utile lorsqu’il est comparé à lui-même, car il utilise la même charge de travail sur différentes configurations de machines virtuelles ou charges d’utilisateurs. Par exemple, le graphique suivant montre le même nombre d’utilisateurs de test, 22, mais avec un score EUX inférieur de 7,3 et une valeur VSImax de 15. Une observation intéressante est que le score EUX a chuté pendant la tempête de connexions, mais qu’il est revenu rapidement une fois les connexions terminées.

Score EUX

Environnement de test

Pour les tests d’évolutivité, les machines virtuelles de l’infrastructure ont été configurées comme suit :

  • Une appliance virtuelle Login Enterprise exécutant la version 4.11.2.
  • Quatre lanceurs Login Enterprise
  • Un Citrix Cloud Connector
  • Un contrôleur de domaine Active Directory agissant à la fois en tant que profil et en tant que serveur DNS
  • Charges de travail des applications virtuelles Citrix exécutées sur une seule instance de centre de données Windows Server 2019 ou une seule instance multisession Windows 10 avec les éléments suivants :
    • Système d’exploitation multi-session Citrix Server VDA 2203.0.2000.2076 (CU2) exécuté au niveau fonctionnel 2106 (ou version ultérieure).
    • Microsoft Office M365 pour entreprises
    • Microsoft Defender avec paramètres par défaut
    • Dernières mises à jour de Windows disponibles au moment du test
  • Les paramètres prêts à l’emploi ont été utilisés, sauf indication contraire
  • Le service Citrix Cloud DaaS a fourni et géré le Delivery Controller, SQL Server, le service Workspace (équivalent à StoreFront), le serveur de licences et la console de gestion Studio. Un contrôleur de domaine Active Directory et Cloud Connector ont été installés séparément dans le client Azure.

La figure suivante illustre l’architecture de test.

Architecture du laboratoire

Remarque :

Cette conception architecturale est uniquement destinée à des fins de test et ne reflète pas ce à quoi ressemble un environnement de production avec des composants redondants. Les administrateurs peuvent consulter les documents sur les meilleures pratiques et l’architecture sur Citrix Tech Zone.

Résultats des tests d’évolutivité

Pour cette étude, nous nous sommes concentrés sur les types d’instances AMD compris entre 4 et 32 vCPU. Le principal facteur à l’origine de cette décision était le coût et l’efficacité. Dans les directives de dimensionnement de la machine virtuelle de l’hôte de session, Microsoft recommande de limiter la taille de la machine virtuelle entre 4 et 24 vCPU pour les raisons suivantes :

« En mode multisession, la présence de plusieurs utilisateurs sur une machine virtuelle à deux cœurs entraîne une instabilité de l’interface utilisateur et des applications, ce qui réduit la qualité de l’expérience utilisateur. Les machines virtuelles multisessions stables utilisent au moins quatre cœurs. »

« 32 cœurs est le nombre maximum pour les machines virtuelles : à mesure que le nombre de cœurs augmente, la charge de synchronisation du système augmente également. Pour la plupart des charges de travail, avec environ 16 cœurs, le retour sur investissement est réduit, la majeure partie de la capacité supplémentaire étant compensée par les frais de synchronisation. Vous aurez probablement plus d’utilisateurs sur deux machines virtuelles à 16 cœurs par rapport à une machine à 32 cœurs. »

En ce qui concerne les charges de travail DaaS, la mise à l’échelle est moins efficace que la mise à l’échelle. Ces directives étaient donc parfaitement logiques et nous ont permis de concentrer les tests sur les domaines présentant les meilleures configurations pour les clients.

Six types d’instances AMD différents ont été testés avec deux systèmes d’exploitation différents. Comme la charge de travail est identique pour tous les types d’instances, l’évolutivité peut être dérivée des résultats. Le tableau suivant présente les charges de travail exécutées sur chaque type d’instance.

  Windows Server 2019 Windows 10 multi-sessions
D4as_v5 Connaissances Connaissances
D8as_v5 Connaissances Connaissances
D16as_v5 Connaissances Connaissances
NV8as_v4 Connaissances Connaissances, GPU
NV16as_v4 Connaissances Connaissances, GPU
NV32as_v4 Connaissances Connaissances, GPU

Utilisateurs attendus

Avant de déterminer la rentabilité des types d’instances AMD, nous devions déterminer combien d’utilisateurs s’exécutent correctement sur un type d’instance offrant une expérience utilisateur idéale. Heureusement, le score VSImax est très proche du nombre d’utilisateurs que nous pouvons espérer avoir à l’aise dans une configuration donnée.

Charge de travail des travailleurs du savoir

Nous commençons par la charge de travail du Knowledge Worker, qui constitue le cas d’utilisation le plus large pour Citrix DaaS. Le graphique suivant présente les scores finaux obtenus pour les charges de travail multisession Windows 10 et Server 2019 pour les types d’instances testés.

VSI maximum

À partir de ces données, les conclusions suivantes peuvent être tirées :

La mise à l’échelle des processeurs n’entraîne pas de gains linéaires en termes de nombre d’utilisateurs. Sur la base d’informations antérieures concernant la diminution de l’efficacité de la surcharge de synchronisation, ce résultat est attendu.

Windows 10 Multisession est moins efficace en termes de ressources que Server 2019. Ce résultat est attendu car Server 2019 est mieux optimisé pour héberger plusieurs utilisateurs. L’utilisation d’instances de la série NV compatibles GPU n’augmente pas le nombre d’utilisateurs. Ce résultat est également attendu en raison de la surcharge des GPU ajoutés au processeur.

Poursuivant cette logique, le graphique montre clairement qu’à mesure que le nombre de processeurs virtuels augmente dans le type d’instance, le nombre d’utilisateurs par processeur virtuel diminue. En ce qui concerne les processeurs AMD, la conclusion est qu’il est préférable de procéder à une mise à l’échelle plutôt qu’à une mise à l’échelle, car vous obtenez plus d’utilisateurs sur des machines plus petites que sur un nombre équivalent de processeurs virtuels sur une machine plus grande.

Nombre d'utilisateurs par vCPU

Charge de travail intensive du GPU

Passons aux charges de travail gourmandes en GPU, où nous observons des tendances similaires en ce qui concerne le nombre d’utilisateurs de VSImax par type d’instance. Les charges de travail gourmandes en GPU n’étaient exécutées que sur les instances de la série NV. Les résultats sont présentés dans le graphique suivant.

Ces données nous permettent de tirer deux conclusions identiques à celles que nous avons tirées pour la charge de travail des travailleurs du savoir.

La mise à l’échelle des processeurs n’entraîne pas de gains linéaires en termes de nombre d’utilisateurs. Ce résultat est attendu car la surcharge de synchronisation est moins efficace et la série NV_v4 s’appuie sur les cycles du processeur pour utiliser le GPU. Cet impact était dû en partie à la vidéo 4K, qui consommait des cycles de processeur qui risquaient de ne pas être transférés au GPU car la redirection n’était pas utilisée. Windows 10 Multisession est moins efficace en termes de ressources que Server 2019. Ce résultat est à nouveau attendu car Server 2019 est mieux optimisé pour héberger plusieurs utilisateurs.

Cependant, en approfondissant le nombre d’utilisateurs par processeur virtuel, le graphique suivant montre que nous n’avons pas la même tendance linéaire avec Windows 10 qu’avec Server 2019. Dans le cas de Windows 10 multisession, l’instance 16 vCPU est la plus efficace.

VSI maximum

Coûts attendus

Nous pouvons désormais utiliser le nombre d’utilisateurs attendu divisé par le coût horaire de l’instance pour obtenir la métrique du coût par heure utilisateur. Ces types d’instances ne sont pas disponibles dans toutes les régions et les tarifs varient d’une région à l’autre. Les prix utilisés reflètent les coûts dans la région Azure West US 2 en août 2023. Par souci de simplicité, seuls le taux complet de paiement à l’utilisation autorisé et les taux d’avantages hybrides ont été utilisés pour cette comparaison. Si vous utilisez les plans d’épargne Microsoft ou la tarification des instances réservées, vos coûts réels sont inférieurs.

Le graphique suivant montre le coût par heure utilisateur-utilisateur par système d’exploitation et modèle de licence pour chaque type d’instance AMD que nous avons testé dans le cadre de la charge de travail de Knowledge Worker.

Coûts moyens

La tarification Azure étant cohérente pour le calcul, les coûts suivent nos graphiques de performance, comme prévu. Notre type d’instance le plus efficace est celui qui offre la meilleure évolutivité, le D4AS_v5, avec un faible coût horaire dans le cadre du modèle de licence hybride et 3 cents par heure dans le cadre du modèle de licence complet sur Windows Server 2019. Un coût similaire est associé à la charge de travail gourmande en GPU, pour laquelle le NV8AS_v4 présente le coût par heure utilisateur le plus bas, soit 7,8 cents par heure avec Hybrid et 13,9 cents par heure avec une licence complète sur Server 2019, comme le montre le graphique suivant.

Coûts moyens

Expérience de l’utilisateur final

Notre étude ne s’arrête pas là. Nous devons encore aborder les aspects de l’expérience utilisateur. La dernière étape consiste à examiner les scores de l’expérience utilisateur final afin de déterminer les instances les plus efficaces en termes de coût et d’expérience utilisateur. Le graphique suivant montre le score EUX moyen associé aux essais ayant obtenu le score VSImax final que nous avons publié pour la charge de travail de Knowledge Worker.

Scores EUX

L’une des conclusions claires des données est que le type d’instance le plus efficace fournit les scores les plus faibles que nous avons suivis. N’oubliez pas que nous avons déclaré plus tôt que les scores inférieurs à 5,5 fournissent des expériences utilisateur négatives. Un score de 6,8x sur le D4AS_v5 est donc toujours respectable. Cependant, en regardant la colonne suivante, nous constatons que le score EUX moyen augmente de manière significative. Pour 0,2 centime supplémentaire par heure, nous pouvons offrir une meilleure expérience à nos utilisateurs finaux. En regardant le graphique de charge de travail intensif en GPU ci-dessous, nous sommes confrontés à une situation similaire.

Scores EUX

Dans ce cas, le type d’instance NV32AS_v4 fournit un score global légèrement supérieur à celui de l’instance NV16AS_v4. Ainsi, même si le NV16AS_v4 offre les performances les plus efficaces, il se peut qu’il ne fournisse pas la meilleure expérience utilisateur final. Le score EUX inférieur sur le NV16AS_v4 résulte d’une densité d’utilisateurs par cœur plus élevée qu’avec les types d’instance NV8AS_v4 ou NV32AS_v4. Étonnamment, Windows 10 Multisession obtient le meilleur score pour les charges de travail gourmandes en GPU avec le NV32AS_v4. Cela est probablement dû au fait que le NV32AS_v4 dispose de plus de cycles de processeur disponibles pendant la partie du test de lecture vidéo 4K, car la redirection n’a pas été utilisée.

Principales conclusions et recommandations

Après avoir examiné les données des tests et analysé les résultats, voici nos principales conclusions et recommandations pour sélectionner les instances Azure optimisées par AMD :

Les résultats de nos tests ont montré que les instances multi-sessions de Windows 10 accueillaient 30 % d’utilisateurs en moins que les systèmes d’exploitation Windows Server (Server 2019 ou 2022). Les scores de l’expérience utilisateur final (EUX) sont restés relativement constants pour tous les types de systèmes d’exploitation. Bien que le type d’instance le plus rentable pour le Knowledge Worker soit le type d’instance D4as_v5, il est recommandé d’utiliser le type d’instance D8as_v5 et de tirer parti de la meilleure expérience utilisateur pour une fraction de centime de plus par heure.

Un seul GPU peut être partagé efficacement entre plusieurs sessions. Toutefois, la détermination du type d’instance à utiliser dépend principalement du type de charge de travail du GPU.

Conclusion

Comme toujours, nous vous recommandons de réaliser vos propres tests de performance avec des charges de travail spécifiques à votre entreprise. Supposons que vous n’ayez qu’une connaissance limitée de votre charge de travail ou des types d’instances que vous allez finalement obtenir. Dans ce cas, vous pouvez utiliser les informations que nous avons fournies pour effectuer une estimation appropriée. En général, les types d’instances de vCPU les plus faibles offrent un meilleur équilibre entre les coûts et les performances.

Décision de conception : les avantages économiques de la fourniture de Citrix DaaS dans Azure sur AMD Compute