DDA sous Hyper-V (Server 2016)

DDA sous Hyper-V (Server 2016) - Win 10 - Windows & Software

Marsh Posté le 04-06-2017 à 21:20:25    

Salut à tous,
Je ne sais pas trop dans quelle catégorie poser ma question ...
 
Je cherche à faire du DDA pour un GPU sous Hyper-V avec un 2016 Server Standard.
 
J'ai créé une VM sous 10 Entreprise Trial. C'est quand je cherche à y ajouter le GPU que ça se gatte.
 

Citation :

Dismount-VmHostAssignableDevice : Échec de l’opération.
La configuration actuelle ne permet pas au système d'exploitation de contrôler le bus PCI Express. Vérifiez les
paramètres du BIOS ou de l'interface UEFI.
Au caractère Ligne:1 : 1
+ Dismount-VmHostAssignableDevice -locationpath $locationpath -force
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument : ( : ) [Dismount-VMHostAssignableDevice], VirtualizationException
    + FullyQualifiedErrorId : InvalidParameter,Microsoft.HyperV.PowerShell.Commands.DismountVMHostAssignableDevice


Je précise que dans le Bios, tout est activé pour la virtualisation, y compris le Vd-t
 
J'ai testé sur un Dell Precision T5600 (Bi-Xeon, 64Go Ram, GTX770) mais aussi sur mon PC, j'ai le même problème (i7 6700, 32Go, GTX970) :(
 
Voici le code au complet :

Code :
  1. $MyNVIDIA = Get-PnpDevice | Where-Object {$_.Class -eq “Display”} | Where-Object {$_.Service -eq “nvlddmkm”}
  2. $MyNVIDIA | ft -AutoSize
  3. $MyNVidiaGeForce770 = Get-PnpDevice -PresentOnly| Where-Object {$_.Class -eq “Display”} | Where-Object {$_.Service -eq “nvlddmkm”} | Where-Object {$_.FriendlyName -eq “NVIDIA GeForce GTX 770”}
  4. $MyNVidiaGeForce770 | ft -AutoSize
  5. Disable-PnpDevice -InstanceId $MyNVidiaGeForce770[0].InstanceId -Confirm:$false
  6. $MyNVidiaGeForce770 = Get-PnpDevice -PresentOnly| Where-Object {$_.Class -eq “Display”} | Where-Object {$_.Service -eq “nvlddmkm”} | Where-Object {$_.FriendlyName -eq “NVIDIA GeForce GTX 770”}
  7. $MyNVidiaGeForce770 | ft -AutoSize
  8. $DataOfGPUToDDismount = Get-PnpDeviceProperty DEVPKEY_Device_LocationPaths -InstanceId $MyNVidiaGeForce770[0].InstanceId
  9. $DataOfGPUToDDismount | ft -AutoSize
  10. $locationpath = ($DataOfGPUToDDismount).data[0]
  11. $locationpath | ft -AutoSize
  12. Dismount-VmHostAssignableDevice -locationpath $locationpath -force
  13. Get-VMHostAssignableDevice
  14. Set-VM VM-Test -GuestControlledCacheTypes $True -LowMemoryMappedIoSpace 2000MB -HighMemoryMappedIoSpace 4000MB
  15. Get-VM VM-Test | fl *
  16. Add-VMAssignableDevice -LocationPath $locationpath -VMName VM-Test


Si vous avez une idée, je suis preneur :)
 
J'espère que ce ne sont pas mes carte mère qui ne sont pas compatible avec le DDA ...
 
Merci !


Message édité par Dual_Shock le 04-06-2017 à 21:53:25

---------------
http://alpesairsoft74.free.fr || http://oxydlan.free.fr
Reply

Marsh Posté le 04-06-2017 à 21:20:25   

Reply

Marsh Posté le 04-06-2017 à 21:57:39    

Le matériel n'est peut être pas compatible avec cette fonction.

Reply

Marsh Posté le 04-06-2017 à 22:19:22    

Effectivement :/
 
Je viens de trouver un script pour tester son matériel :
https://raw.githubusercontent.com/M [...] ey-dda.ps1
 
Et le miens n'est pas compatible (les 2 PC)
 
Ca existe une CM en 1151 (pour mon 6700) compatible DDA ? Je n'arrive pas à trouver ce critère.


---------------
http://alpesairsoft74.free.fr || http://oxydlan.free.fr
Reply

Marsh Posté le 05-06-2017 à 10:20:37    

tu as quoi comme erreur là sur le script ?

Reply

Marsh Posté le 05-06-2017 à 10:40:45    

Comme réponse, j'ai : Unfortunately, this machine doesn't support using them in a VM.

 

Et à chaque test (par exemple, sur le GPU) :

 

NVIDIA GeForce GTX 770
BIOS kept control of PCI Express for this device.  Not assignable.


Message édité par Dual_Shock le 05-06-2017 à 10:43:34

---------------
http://alpesairsoft74.free.fr || http://oxydlan.free.fr
Reply

Marsh Posté le 05-06-2017 à 11:07:04    

faudrait regarder dans le bios si tu as pas une option sur la gestion des irq par l'os

Reply

Marsh Posté le 06-06-2017 à 09:09:22    

Il me semble qu'Hyper-v n'est pas capable de faire ça.
 
En plus, vu que tu as besoin de faire des appels matériels directs au GPU, je ne pense pas qu'utiliser une VM soit la meilleure solution.


---------------
#TeamNoBidouille || Come to the Dark Side, we have cookies || Mangez 5 fruits et légumes par an ! || Le digital, c'est les doigts
Reply

Marsh Posté le 06-06-2017 à 09:46:52    

sisi, depuis 2016.
et oui ça se fait bien

Reply

Marsh Posté le 06-06-2017 à 10:11:15    

J'ai pas encore testé la version 2016 :)


---------------
#TeamNoBidouille || Come to the Dark Side, we have cookies || Mangez 5 fruits et légumes par an ! || Le digital, c'est les doigts
Reply

Marsh Posté le 06-06-2017 à 13:38:07    

Je@nb a écrit :

faudrait regarder dans le bios si tu as pas une option sur la gestion des irq par l'os


J'ai tout vérifié, rien. Sur mes 2 machines.
Ce qui est chiant c'est pour trouver une carte mère compatible. Je sais que les PowerEdge T630 sont compatible, mais chier de racheter encore une bécane pour du test :(
 
Autant je connais bien Hyper-V, je connais très mal ESXI ou les autres solutions de virtualisation. Ce que je cherche à faire est plus facilement réalisable autrement ? Ou mon problème est vraiment hardware ?

Message cité 1 fois
Message édité par Dual_Shock le 06-06-2017 à 13:39:56

---------------
http://alpesairsoft74.free.fr || http://oxydlan.free.fr
Reply

Marsh Posté le 06-06-2017 à 13:38:07   

Reply

Marsh Posté le 06-06-2017 à 14:57:20    

L'erreur que tu as vient du fait que ton truc essaye de trouver un périphérique compatible sur les ports PCIe de la machine.
 
Sauf que ta VM ne propose que des périphériques virtualisés, et non les périphériques physiques compatibles.
 
C'est le sens du message " Unfortunately, this machine doesn't support using them in a VM."


---------------
#TeamNoBidouille || Come to the Dark Side, we have cookies || Mangez 5 fruits et légumes par an ! || Le digital, c'est les doigts
Reply

Marsh Posté le 06-06-2017 à 15:19:07    

Non pas du tout.
L'erreur c'est que hyper-v essaie de prendre le controle du device pci-e mais que le bios ne lui donne pas la main donc ça échoue donc le script dit que pas compatible.
 
Voir cet excellent blog pour les détails https://blogs.technet.microsoft.com [...] d-devices/

Reply

Marsh Posté le 06-06-2017 à 16:32:14    

Oui c'est ça, je précise que mon problème (et l’exécution du script) se font pour le moment sur ma machine hôte. J'en suis pas encore à la VM (visiblement certains ont aussi des problèmes une fois le périphérique assigné).
 
En désespoir de cause, je viens de tester sur une machine plus vielle avec un chipset H87 avec le tout dernier BIOS en date, mais idem.
 
Je viens d'envoyer un mail à mon fournisseur, j’espère qu'il pourras m'aider ou m'aiguiller vers des cartes mères compatibles.


---------------
http://alpesairsoft74.free.fr || http://oxydlan.free.fr
Reply

Marsh Posté le 06-06-2017 à 16:36:11    

c'est quoi ta machine ?

Reply

Marsh Posté le 06-06-2017 à 16:58:56    

Des machines de tests.
2 avec des cartes mères ''grand public'' et une plus pro mais pas non plus un vrai serveur :
Dell Precision T5600 (Bi Xeon E5 2620 / 64Go RAM)
Gigabyte H170 HD3P + i7 6700 / 32Go RAM
Asus H87 Plus + i7 4770 / 16Go RAM
Tous avec les derniers BIOS en date.
Je dois pouvoir tester avec un Precision T7810XL et je dois avoir un PowerEdge R420 II aussi.


---------------
http://alpesairsoft74.free.fr || http://oxydlan.free.fr
Reply

Marsh Posté le 06-06-2017 à 17:02:48    

Je@nb a écrit :

Non pas du tout.
L'erreur c'est que hyper-v essaie de prendre le controle du device pci-e mais que le bios ne lui donne pas la main donc ça échoue donc le script dit que pas compatible.
 
Voir cet excellent blog pour les détails https://blogs.technet.microsoft.com [...] d-devices/


Bordel, il faut vraiment que j'essaye 2016.
En tout cas, super lien !


---------------
#TeamNoBidouille || Come to the Dark Side, we have cookies || Mangez 5 fruits et légumes par an ! || Le digital, c'est les doigts
Reply

Marsh Posté le 06-06-2017 à 18:32:09    

Oui, 2016 est au top, cette fonctionnalité DDA est présente depuis la TP4 et sinon, pour des besoins plus faibles en GPU, ils ont bien amélioré le RemoteFX qui gère super bien le multi écran, les hautes résolutions et on peut y allouer 1 Go de mémoire vidéo (et même 2 en bidouillant)


---------------
http://alpesairsoft74.free.fr || http://oxydlan.free.fr
Reply

Marsh Posté le 16-08-2017 à 12:12:17    

Je redonne quelques news si jamais ça peut intéresser des gens :)
Même si je n'ai pas trop le temps de bidouiller en ce moment, j'ai pu faire ce que je voulais avec une mobo à base de chipset Intel C236.
J'ai encore des bugs (ça marche bien avec une GTX770, mais pas avec une GTX1070 et mes Quadro, but de la manœuvre, ne sont pas reconnues, ...) mais j'arrive à faire apparaitre des périphériques dans les VM et ça marche plutôt bien. Je me demande si c'est pas la carte mère qui est capricieuse.

 

Sinon, j'ai également testé sur un PowerEdge R420 et ce n'était pas concluant non plus.


Message édité par Dual_Shock le 16-08-2017 à 12:13:33

---------------
http://alpesairsoft74.free.fr || http://oxydlan.free.fr
Reply

Marsh Posté le 16-08-2017 à 15:32:59    

Dual_Shock a écrit :


Autant je connais bien Hyper-V, je connais très mal ESXI ou les autres solutions de virtualisation. Ce que je cherche à faire est plus facilement réalisable autrement ? Ou mon problème est vraiment hardware ?


 
Hello,
 
Je peu faire du Direct Path I/O (ce que tu essaye de faire en sommes) avec ESXi 6.5 installé sur un Dell T3600 Full Stock. Ca fonctionne sans soucis. Si cela peut t'aider dans tes futurs choix d'hyperviseurs .. ;)

Reply

Marsh Posté le 23-08-2017 à 10:15:26    

Hello !
Merci pour ce retour, j'aurais du tester ESXi plus tôt :)
Pour info, j'ai réussis à le faire sur le Dell PowerEdge 420 (alors que impossible sur les T5600, pourtant avec le même chipset Intel C600), mais le GPU apparaît en erreur dans ma VM.
J'ai également testé sur une carte mère Gigabyte MW31-SP0 (chipset Intel C236) et même problème, j'arrive bien à faire passer mon GPU dans les VM mais après installation des pilotes, ça se mets en erreur ...
J'utilise le même pilote sur l'hôte (Serveur 2016) que sur la VM (10 Entreprise).
Je vais pousser mes essais, ça va bien finir par fonctionner :)


---------------
http://alpesairsoft74.free.fr || http://oxydlan.free.fr
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed