-
Qu'est-ce que le GPU Passthrough Hyper-V ?
-
Conditions préalables pour le GPU Passthrough sous Hyper-V
-
Comment activer le passage GPU avec DDA sur Windows Server ?
-
Comment activer le passage direct de la carte graphique avec GPU-P sur des hôtes Windows 10/11 ?
-
Meilleures pratiques pour des déploiements fiables du GPU Passthrough Hyper-V
-
Dépannage des problèmes courants liés au passage de GPU Hyper-V
-
Protégez vos machines virtuelles Hyper-V avec Vinchin Backup & Recovery
-
Hyper-V GPU Passthrough Foire aux questions
-
Conclusion
Le passage direct de la carte graphique (GPU) dans Hyper-V change la manière dont les organisations exécutent des charges de travail exigeantes dans des environnements virtuels Hyper-V. En permettant à une machine virtuelle (VM) d'accéder directement à un GPU physique ou de le partager efficacement, vous pouvez déployer de nouveaux cas d'utilisation comme l'entraînement en intelligence artificielle (IA) ou le rendu 3D, et tout cela sans quitter le confort de votre infrastructure Hyper-V. Mais comment cela fonctionne-t-il ? Quels sont les pièges à éviter ? Passons en revue tout ce que vous devez savoir sur le passage direct du GPU dans Hyper-V, des bases aux déploiements avancés.
Qu'est-ce que le GPU Passthrough Hyper-V ?
Le GPU passthrough Hyper-V permet d'affecter directement une carte graphique physique du serveur hôte à une machine virtuelle, permettant ainsi à la machine virtuelle d'utiliser la puissance réelle du GPU au lieu de dépendre de graphismes émulés. Cela est essentiel pour les tâches gourmandes en ressources telles que l'apprentissage automatique, la modélisation CAO, le codage vidéo ou le calcul scientifique.
Conditions préalables pour le GPU Passthrough sous Hyper-V
Avant de configurer le GPU Passthrough d'Hyper-V, vérifiez soigneusement les exigences en matière de matériel et de logiciel. Omettre même un seul détail peut entraîner des erreurs frustrantes.
Liste de vérification pour la validation du matériel/logiciel
Pour l'affectation de périphérique discret (DDA) :
Système d'exploitation : Windows Server 2016 ou version ultérieure, avec le rôle Hyper-V activé
GPU : Cartes graphiques PCIe prises en charge (par exemple, NVIDIA Tesla, Quadro, AMD Radeon Pro/FirePro)
Type de machine virtuelle : Machines virtuelles de génération 2 uniquement
Paramètres : Mémoire dynamique et points de contrôle désactivés
Utilisation du GPU : Le GPU cible ne doit pas être utilisé par l'hôte ou d'autres machines virtuelles
Firmware : UEFI avec « Décodage au-dessus de 4 Gio » activé dans le BIOS
Optionnel : Prise en charge SR-IOV (recommandé pour certains GPU)
Pour la partition GPU (GPU-P) :
Système d'exploitation : Windows 10/11 Pro ou Enterprise (version 1903+)
GPU : GPU moderne prenant en charge les fonctionnalités de partitionnement
Type de machine virtuelle : Machines virtuelles de génération 2 uniquement
PowerShell : Requis pour l'injection de pilotes
Facultatif : Activez la fonction Resizable BAR dans le BIOS pour des performances accrues
Sécurité : Désactiver les fonctionnalités de sécurité basées sur la virtualisation (par exemple, l'isolation du noyau) en cas de problèmes
Note : L'utilisation de WSL2 avec Hyper-V et des machines virtuelles avec GPU-P activé peut entraîner des conflits de ressources, car WSL2 revendique un accès exclusif à certains GPU.
Comment activer le passage GPU avec DDA sur Windows Server ?
L'assignation de périphérique discrète (DDA) est idéale lorsque vous souhaitez obtenir des performances optimales en affectant une carte graphique physique à une seule machine virtuelle, par exemple pour des serveurs d'apprentissage profond ou des nœuds de rendu haut de gamme.
Configuration étape par étape :
Premièrement : Désactivez votre machine virtuelle cible avant d'apporter des modifications de configuration impliquant l'attribution matérielle !
1. Désactiver les points de contrôle automatiques et la mémoire dynamique :
Ces paramètres doivent être désactivés afin que rien ne perturbe le mappage direct des périphériques.
Set-VM -Name <VMName> -AutomaticStopAction TurnOff Set-VM -Name <VMName> -DynamicMemoryEnabled $false
2. Réserver l'espace d'E/S en mémoire mappée :
Vous devez réserver suffisamment d'espace d'adresses pour que le système d'exploitation invité puisse voir toutes les régions de mémoire vidéo (VRAM) et de micrologiciel exposées par la carte.
Set-VM -Name <VMName> -GuestControlledCacheTypes $true -LowMemoryMappedIoSpace 3072 -HighMemoryMappedIoSpace 33280
Les valeurs sont en mégaoctets : ici nous réservons environ 3 Go d'espace MMIO bas plus environ 32 Go d'espace MMIO haut.
3. Localisez le chemin d’accès à votre GPU physique :
Ouvrez le Device Manager > développez Display adapters, faites un clic droit sur votre carte cible > sélectionnez Properties > allez dans l'onglet Details, définissez la liste déroulante Propriété sur Location Paths, puis copiez la valeur commençant par PCIROOT...
.
Ou via PowerShell :
Get-PnpDevice | Where {$_.Class -eq "Display"} | Select Name,InstanceId
Si rien n'apparaît sous « Affichage », essayez de faire une recherche par nom de fabricant (Where {$_.FriendlyName -like 'NVIDIA'}
).
4. Démonter le périphérique de l'hôte :
Utilisez cette commande—notez que l'utilisation de –force
le supprimera immédiatement du contrôle hôte ! Si cet adaptateur est votre carte graphique principale sur un système de bureau, plutôt qu'un serveur sans écran disposant d'une solution graphique intégrée pour la sortie console—vous pourriez perdre l'affichage local !
Dismount-VmHostAssignableDevice -LocationPath "<YourLocationPath>" -force
Si le démontage échoue en raison de processus actifs verrouillant le périphérique : désactivez-le temporairement dans le Gestionnaire de périphériques avant de réexécuter la commande PowerShell ci-dessus.
5. Attribuer l’appareil directement à votre machine virtuelle cible :
Add-VMAssignableDevice -VMName <VMName> -LocationPath "<YourLocationPath>"
6. Démarrez votre machine virtuelle et installez les pilotes :
Démarrez votre système d'exploitation invité ; ouvrez son propre Gestionnaire de périphériques sous Cartes graphiques—vous devriez voir à présent à la fois « Microsoft Hyper-V Video » ainsi que votre carte dédiée réelle dans la liste ! Installez les derniers pilotes à l'intérieur de l'invité si nécessaire (NVIDIA, AMD), correspondant à la version du système d'exploitation invité—et non les pilotes de l'hôte !
7. Retirer/Réclamer la carte plus tard :
Pour revenir au contrôle depuis l'invité vers le pool hôte :
Remove-VMAssignableDevice -VMName <VMName> -LocationPath "<YourLocationPath>" Mount-VMHostAssignableDevice -LocationPath "<YourLocationPath>"
Vérification de la réussite
Une fois la configuration terminée et les pilotes chargés sans afficher d'icônes d'erreur dans le gestionnaire de périphériques invité, ou après avoir exécuté une application de benchmark rapide, vous êtes prêt ! Vous pouvez vous attendre à des vitesses proches de celles du matériel brut, car il n'y a ici aucune surcharge de virtualisation entre le code de l'application et le matériel informatique.
Comment activer le passage direct de la carte graphique avec GPU-P sur des hôtes Windows 10/11 ?
Si la flexibilité est plus importante que la vitesse maximale, par exemple si plusieurs utilisateurs ont chacun besoin d'une accélération modérée en même temps, envisagez de diviser une seule carte puissante en plusieurs tâches plus petites en utilisant des vGPU partitionnés via le modèle plus récent de Microsoft appelé Partitionnement de GPU « GPU-P ».
Configuration étape par étape
1. Vérifiez que votre carte prend en charge le partitionnement :
Dans les versions récentes de Windows :
Get-VMPartitionableGpu # Sur Win10+ Get-VMHostPartitionableGpu # Sur Win11+
Si les résultats affichent des périphériques compatibles—vous êtes prêt !
2. Ajouter l’adaptateur GpuPartition à la machine virtuelle cible :
Assurez-vous que la machine virtuelle cible est éteinte avant de continuer !
Add‑VMGpuPartitionAdapter ‑VMName <VMName>
3. Copier les pilotes de l'hôte dans la machine invitée à l'aide d'un script :
Un script populaire appelé Easy-GPU-PV automatise l'injection des pilotes ([lien du projet GitHub disponible sur demande]). Téléchargez/décompressez sur le système hôte puis exécutez :
Set‑ExecutionPolicy ‑Scope Process ‑ExecutionPolicy Bypass –Force .\Update‑VMGpuPartitionDriver.ps1 ‑VMName <VMName> ‑GPUName "AUTO"
Cela copie les pilotes fonctionnels actuels dans l'image invitée afin que les applications reconnaissent correctement leur partition vGPU attribuée après le démarrage, même si les installateurs officiels bloquent l'installation à l'intérieur des environnements virtualisés !
4. Réserver un espace MMIO suffisant pour l'accès invité :
Encore une fois, les valeurs ci-dessous sont en mégaoctets — pas en gigaoctets !
Set-VM -VMName -GuestControlledCacheTypes $true -LowMemoryMappedIoSpace 1024 -HighMemoryMappedIoSpace 32768
Réglez une valeur plus élevée si vous utilisez des cartes mémoire importantes (>24Go de mémoire vidéo).
5. (Facultatif) Ajuster finement l'allocation des ressources par partition (Windows 11 uniquement) :
Vous pouvez définir la mémoire vidéo minimale/maximale par instance d'adaptateur :
Set-VMGpuPartitionAdapter –Vmname <Vmname> –MinPartitionVRAMBytes <min_bytes> –MaxPartitionVRAMBytes <max_bytes>
Exemple : allouer entre environ 800 Mo et 1 Go par partition en fonction des besoins en charge de travail.
6. (Important) Éviter les conflits avec WSL ou d'autres services :
Si WSL2 est installé/en cours d'exécution simultanément, il pourrait verrouiller de manière exclusive le même matériel sous-jacent, provoquant des échecs lors des tentatives de démarrage ou d'allocation au sein des machines invitées ! Désactivez temporairement WSL si les problèmes persistent (consultez les recommandations de Microsoft).
Vérification de la réussite
Démarrez le système d'exploitation invité cible ; ouvrez son propre Gestionnaire de périphériques sous les adaptateurs d'affichage — une nouvelle entrée intitulée « Virtual Render Device » devrait apparaître en plus des sorties vidéo par défaut. Exécutez des applications de test telles que le moteur de rendu Blender Cycles ou un travail d'entraînement TensorFlow — ils indiqueront les ressources CUDA/OpenCL disponibles via leurs API respectives.
Meilleures pratiques pour des déploiements fiables du GPU Passthrough Hyper-V
Pour un déploiement fluide du GPU Passthrough Hyper-V, suivez ces meilleures pratiques :
Mettez toujours à jour les pilotes HÔTE et INVITÉ ensemble, chaque fois que c’est possible.
Surveiller la température et la vitesse des ventilateurs, en particulier dans les châssis rackmount denses.
Pour les serveurs de production, consacrez au moins un adaptateur intégré/non-passthrough dédié exclusivement aux tâches de console/Gestion des clés de chiffrement (KMS).
Évitez de mélanger des cartes graphiques grand public avec des charges de travail de centre de données, sauf si le fournisseur prend explicitement en charge les fonctionnalités de virtualisation.
Utilisez exclusivement des machines virtuelles deuxième génération pour une meilleure prise en charge d'UEFI et des limites d'isolation/sécurité améliorées.
Activez les options SR-IOV et Above4GDecoding dans les menus du BIOS/Firmware avant le déploiement initial.
Dépannage des problèmes courants liés au passage de GPU Hyper-V
Même les administrateurs expérimentés rencontrent des problèmes ! Voici quelques problèmes courants et leurs solutions :
Erreur Code43 dans le système invité après l'installation du pilote : Cela signifie généralement que la version du pilote est incorrecte ou qu'il reste des verrouillages provenant d'autres processus. Désinstallez/réinstallez le bon package de pilote à l'intérieur de la machine virtuelle, et non via l'installateur standard.
"Échec du démarrage" ou écran noir au démarrage : Vérifiez que la mémoire dynamique/les points de contrôle sont DÉSACTIVÉS pendant tout le cycle de vie et assurez-vous qu'aucun autre processus ne verrouille le même ID d'appareil PCIe sur les nœuds du cluster.
Mauvaise performance malgré une affectation réussie : Vérifiez les goulots d'étranglement au niveau du processeur/de la mémoire et assurez-vous qu'il y a une bande passante suffisante entre les sous-systèmes de stockage et réseau.
Contention des ressources WSL/GPU : Si vous utilisez WSL2, désactivez-le temporairement lors de l'exécution de tâches gourmandes en GPU sur des machines virtuelles ou des conteneurs.
Protégez vos machines virtuelles Hyper-V avec Vinchin Backup & Recovery
Une fois que vous avez configuré le passthrough GPU d'Hyper-V et que des charges critiques tournent dans votre environnement Hyper-V, il est essentiel de protéger ces investissements contre les risques de perte de données ou d'arrêt imprévu. C'est là qu'intervient Vinchin Backup & Recovery, une solution de sauvegarde professionnelle adaptée aux infrastructures virtuelles telles que la vôtre.
Vinchin se spécialise dans des solutions professionnelles de sauvegarde et de reprise après sinistre conçues spécifiquement pour les machines virtuelles sur plus de quinze plateformes principales, notamment VMware, Proxmox VE, oVirt, OLVM, RHV, XCP-ng, XenServer, OpenStack, ZStack, et offre notamment un support particulièrement robuste pour les environnements Microsoft Hyper-V présentés ici aujourd'hui.
Avec Vinchin, vos machines virtuelles — qu'elles utilisent des configurations standard ou avancées telles que le mode pass-through — sont protégées par des stratégies de sauvegarde efficaces, la migration V2V et des options de restauration flexibles. La solution propose une planification automatisée, des politiques de rétention et une console web intuitive.
L'opération de Vinchin Backup & Recovery est très simple, il suffit de quelques étapes simples.
1.Sélectionnez simplement les machines virtuelles Hyper-V sur l'hôte
2. Ensuite, sélectionner la destination de la sauvegarde
3. Sélectionner des stratégies
4. Soumettre enfin le travail
Vinchin garantit une protection complète de vos machines virtuelles, y compris les configurations avancées de pass-through. Faites confiance à Vinchin, utilisé par des milliers d'organisations à travers le monde, et profitez de 60 jours d'essai gratuit et complet, vous permettant d’explorer toutes les fonctionnalités sans risque avant tout investissement.
Hyper-V GPU Passthrough Foire aux questions
Q1 : Puis-je utiliser le hyper-v gpu passthrough sur la version familiale de Windows ?
A1 : Non : vous avez besoin des éditions Pro, Entreprise ou Éducation ; l'édition Home ne prend pas en charge les fonctionnalités de virtualisation requises.
Q2 : Comment mettre à jour le pilote passé en pass-through après la mise à niveau de mon hôte ?
A2 : Relancez à nouveau le script Easy-GPU-PV en visant la pile de pilotes mise à jour ; redémarrez ensuite les machines invitées concernées.
Conclusion
Le pass-through Hyper-V ouvre des possibilités pour les charges critiques, mais nécessite une planification rigoureuse en matière de compatibilité matérielle, de gestion des pilotes et de surveillance continue. Avec Vinchin, vous avez l'esprit tranquille, sachant que chaque charge critique reste protégée, quel que soit sa complexité. Essayez notre version d'essai gratuite dès aujourd'hui !
Partager sur: