Product Documentation

Accélération GPU pour OS de serveur Windows

Jun 20, 2017

HDX 3D Pro permet aux applications exigeantes en ressources graphiques exécutées dans de sessions d'OS de serveur Windows d'être restituées sur le processeur graphique du serveur (GPU). En déplaçant la restitution OpenGL, DirectX, Direct3D et Windows Presentation Foundation (WPF) sur le processeur graphique du serveur, l'unité centrale du serveur n'est pas ralentie par la restitution des graphiques. Par ailleurs, le serveur est capable de traiter davantage de graphiques car la charge est partagée entre le processeur graphique et l'unité centrale. 

Windows Server étant un système d'exploitation multi-utilisateurs, un processeur graphique auquel accède XenApp peut être partagé par de multiples utilisateurs sans qu'une virtualisation du GPU (vGPU) ne soit nécessaire.

Pour les procédures qui impliquent la modification du registre, faites attention : la modification incorrecte du Registre peut entraîner des problèmes graves pouvant nécessiter de réinstaller votre système d'exploitation. Citrix ne peut garantir la possibilité de résoudre les problèmes provenant d'une mauvaise utilisation de l'Éditeur du Registre. Vous assumez l’ensemble des risques liés à l’utilisation de cet outil. Veillez à faire une copie de sauvegarde de votre registre avant de le modifier.

Partage GPU

Le partage GPU active la restitution matérielle de l'unité de traitement graphique (GPU) des applications OpenGL et DirectX dans les sessions de bureau à distance ; il possède les caractéristiques suivantes :
  • Peut être utilisée sur des machines bare metal ou virtuelles pour améliorer l'évolutivité et les performances des applications.
  • Permet plusieurs sessions simultanées pour partager les ressources GPU (la plupart des utilisateurs ne requièrent pas les performances de restitution d'un processeur graphique dédié).
  • Ne requiert aucun paramètre spécial.

Vous pouvez installer plusieurs processeurs graphiques sur un hyperviseur et affecter des VM à chacun de ces processeurs graphiques : soit installez une carte graphique possédant plus d'un processeur graphique, soit installez plusieurs cartes graphiques avec au moins un processeur graphique chacune. Le mélange de cartes graphiques hétérogènes sur le serveur n'est pas recommandé.

Les machines virtuelles requièrent un accès intermédiaire direct à un processeur graphique, qui est disponible avec Citrix XenServer, VMware vSphere vDGA et Intel GVT-d. Lorsque HDX 3D est utilisé avec un GPU Pass-through, chaque processeur graphique du serveur prend en charge une machine virtuelle multi-utilisateur.

Le partage GPU ne dépend pas d'une carte graphique spécifique.
  • Lors de l'exécution sur un hyperviseur, sélectionnez une plate-forme matérielle et des cartes graphiques qui sont compatibles avec l'implémentation GPU Pass-through de votre hyperviseur. La liste matérielle qui a réussi le test de certification avec un GPU Pass-through XenServer est disponible dans la section Machines GPU Pass-through.
  • Lors de l'exécution sur des machines bare metal, il est recommandé de n’activer qu’une seule carte vidéo par système d'exploitation. Si plusieurs processeurs graphiques sont installés sur le matériel, désactivez-les tous sauf un à l’aide de Device Manager.
L'évolutivité utilisant le partage GPU dépend de plusieurs facteurs :
  • les applications étant exécutées ;
  • la quantité de mémoire vive vidéo qu'elles consomment ;
  • la puissance de traitement de la carte graphique.

certaines applications gèrent les insuffisances de RAM vidéo mieux que d'autres. Si le matériel devient extrêmement surchargé, ceci provoquera une instabilité ou un vidage du pilote de la carte graphique. Limitez le nombre d'utilisateurs simultanés pour éviter de tels problèmes.

Pour confirmer que l'accélération GPU se produit, utilisez un outil tiers tel que GPU-Z. GPU-Z est disponible à l'adresse http://www.techpowerup.com/gpuz/.

Restitution DirectX, Direct3D et WPF

La restitution DirectX, Direct3D et WPF est uniquement disponible sur les serveurs dotés d'un processeur graphique prenant en charge les versions DDI 9ex, 10 ou 11.
  • Sur Windows Server 2008 R2, DirectX et Direct3D ne requièrent aucun paramètre spécial pour utiliser un seul processeur graphique.
  • Sur Windows Server 2016 et Windows Server 2012, les sessions de Services Bureau à distance (RDS) des sessions sur le serveur hôte de session Bureau à distance utilisent le pilote de rendu de base Microsoft en tant qu'adaptateur par défaut. Pour utiliser le processeur graphique dans les sessions de services Bureau à distance dans Windows Server 2012, activez le paramètre Utiliser la carte graphique matérielle par défaut pour toutes les sessions des services Bureau à distance dans la stratégie de groupe Stratégie ordinateur local > Configuration ordinateur > Modèles d’administration> Composants Windows > Services Bureau à distance > Hôte de la session Bureau à distance > Environnement de session à distance.
  • Pour activer les applications WPF pour effectuer la restitution à l'aide du GPU du serveur, créez les paramètres suivants dans le registre du serveur exécutant les sessions de système d'exploitation Windows Server :
    • [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

Accélération de processeur graphique pour les applications CUDA ou OpenCL

L'accélération GPU d'applications CUDA et OpenCL exécutées dans une session utilisateur est désactivée par défaut.

Pour utiliser les fonctionnalités d'évaluation d'accélération CUDA, activez les paramètres de Registre suivants :
  • [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
Pour utiliser les fonctionnalités d'évaluation d'accélération OpenCL, activez les paramètres de Registre suivants :
  • [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