Przepuszczanie grafiki przez GPU w Hyper-V: niezbędny przewodnik dla początkujących
W niektórych sytuacjach może zaistnieć potrzeba użycia karty graficznej (wyposażonej w procesor graficzny), zwanej również adapterem graficznym lub kartą graficzną, w maszynie wirtualnej. Jednak korzystanie z emulowanej karty graficznej w maszynie wirtualnej Hyper-V może okazać się niewystarczające w przypadku zadań wykorzystujących OpenGL, Direct3D, CUDA i inne funkcje związane ze sprzętem. Na szczęście możliwe jest podłączenie fizycznej karty graficznej do maszyny wirtualnej na hoście Hyper-V przy użyciu funkcji przepuszczania GPU Hyper-V.
Czym jest funkcja GPU Passthrough?
Funkcja GPU Passthrough pozwala podłączyć fizyczną kartę graficzną zainstalowaną na fizycznym hoście do maszyny wirtualnej bez konieczności emulacji. Dzięki temu maszyna wirtualna może bezpośrednio korzystać z fizycznej karty graficznej.
Domyślnie maszyny wirtualne Hyper-V korzystają z emulowanej karty graficznej, która opiera się na Procesorze (CPU) hosta Hyper-V. Jednak takie podejście pozwala użytkownikom wykonywać jedynie najbardziej podstawowe zadania i nie wystarcza w przypadku zadań wymagających większej wydajności graficznej.
UWAGA: Karta graficzna (GPU) może być zintegrowana z chipsetem na płycie głównej lub z Procesorem (CPU), zwanym również Procesorem (w przypadku najnowszych generacji procesorów Intel i powiązanej architektury). Wydajny procesor graficzny to układ na oddzielnej karcie graficznej podłączonej do płyty głównej za pomocą interfejsu PCI Express (PCIe).
Kluczowe korzyści funkcji GPU Passthrough w Hyper-V
Fizyczna karta graficzna podłączona za pomocą funkcji GPU Passthrough w maszynie wirtualnej Hyper-V może być używana przez użytkowników domowych, programistów, projektantów i inne osoby w określonych scenariuszach. Najczęstsze scenariusze to:
- Uruchamianie aplikacji wykorzystujących obciążenia wymagające dużej mocy obliczeniowej grafiki (projektowanie graficzne, modelowanie 3D, rysowanie w programie AutoCAD, inżynieria i obliczenia, projektowanie i tworzenie gier itp.). Korzystanie z renderowania przyspieszonego sprzętowo.
- Uruchamianie gier z funkcjami przyspieszenia sprzętowego. Niektóre gry mogą nie działać bez fizycznej karty graficznej.
- Uruchamianie aplikacji do uczenia maszynowego (ML) i sztucznej inteligencji (AI) z wykorzystaniem procesora graficznego (GPU).
Zalety trybu przepuszczania GPU to:
Better graphics performancemaszyny wirtualne mają bezpośredni dostęp do karty graficznej w przypadku aplikacji lub gier wymagających dużej mocy obliczeniowej grafiki. Odtwarzanie wideo jest płynniejsze. Dostępna jest grafika przyspieszana sprzętowo oraz najnowsze interfejsy API.Flexible utilization of hardware resources. Wykorzystanie jednego hosta Hyper-V dla wielu maszyn wirtualnych z nierównomiernym obciążeniem graficznym w sytuacjach, w których użycie dedykowanych stacji roboczych nie jest optymalne.Cost-efficiency. Przekierowanie GPU może obniżyć koszty w niektórych scenariuszach, zwłaszcza w zakresie wykorzystania zasobów sprzętowych. Funkcja ta może być również wykorzystywana w infrastrukturze wirtualnych pulpitów (VDI).Security. Korzyści w zakresie bezpieczeństwa są podobne do tych wynikających z wirtualizacji w ogóle. Jeśli w maszynach wirtualnych zostaną wykorzystane luki w zabezpieczeniach, maszyny te działają w izolowanym środowisku, co daje większe możliwości złagodzenia skutków problemu. W przypadku poważnych problemów możliwe jest szybkie przywrócenie maszyn wirtualnych z kopii zapasowej.
Wymagania
Aby skonfigurować maszynę wirtualną z funkcją GPU Passthrough na hoście Hyper-V, należy spełnić określone wymagania sprzętowe i programowe. Nie wszystkie karty graficzne mogą być używane z tą funkcją.
Specyfikacje sprzętowe dla funkcji GPU Passthrough
- Procesor na hoście Hyper-V musi obsługiwać funkcje wirtualizacji Intel-VT lub AMD-V. Odpowiednia funkcja wirtualizacji musi być włączona dla procesora na hoście Hyper-V w ustawieniach UEFI/BIOS.
- Jednostka zarządzania pamięcią wejścia-wyjścia (IOMMU) musi być obsługiwana przez Procesor na hoście Hyper-V. Ta funkcja jest wymagana do przepuszczania PCI, w tym przepuszczania karty graficznej lub procesora graficznego.
- Karta graficzna z procesorem graficznym obsługującym technologie wirtualizacji procesorów graficznych, takie jak NVIDIA GRID lub AMD MxGPU (Multiuser GPU). Technologie te są specyficzne dla danego dostawcy. Korzystanie ze sprzętu klasy serwerowej zwiększa szanse powodzenia. Starsze urządzenia korzystające z przerwań PCI (INTx) nie są obsługiwane.
- Aby uniknąć błędów, należy zapewnić wsparcie dla funkcji SR-IOV (Single Root Input/Output Virtualization).
Wymagania sprzętowe dla Hyper-V Passthrough
- Windows Server 2016 lub nowsza wersja Windows Server (zalecana)
- Windows 10 lub Windows 11
- Rola (funkcja) Hyper-V musi być włączona w systemie Windows.
- Najnowsze sterowniki graficzne muszą być zainstalowane na hoście Hyper-V i w maszynie wirtualnej korzystającej z GPU passthrough.
- Do funkcji GPU passthrough z DDA można używać wyłącznie maszyn wirtualnych Hyper-V generacji 2.
Ograniczenia i nieobsługiwane konfiguracje
Zwróć uwagę na konfiguracje, które nie są wspierane w przypadku korzystania z funkcji GPU passthrough:
- Maszyny wirtualne korzystające z funkcji Hyper-V Dynamic Memory, czyli funkcji przydzielania i zwalniania pamięci RAM dla maszyny wirtualnej w razie potrzeby, nie mogą korzystać z funkcji GPU passthrough.
- Przepustowość GPU jest dostępna tylko w najwyższych edycjach systemu Windows, takich jak Windows Server 2019 Datacenter.
- Jeśli na hoście Hyper-V odbywa się wdrażanie podsystemu Windows dla systemu Linux, na maszynie wirtualnej może wystąpić błąd o kodzie 43.
- Funkcje klastrowania, takie jak wysoka dostępność i migracja maszyn wirtualnych na żywo, nie są obsługiwane.
- Funkcje zapisywania i przywracania przy użyciu punktów kontrolnych maszyn wirtualnych nie są obsługiwane.
Konfigurowanie funkcji GPU Passthrough: co należy wiedzieć
Należy pamiętać, że konfiguracja funkcji GPU Passthrough może być bardziej złożona niż większość standardowych zadań związanych z konfiguracją maszyn wirtualnych. Skalowalność środowisk wirtualnych przy korzystaniu z funkcji przekazywania GPU nie jest tak wysoka w przypadku stosowania domyślnej metody emulacji karty graficznej. Nie można przenosić maszyn wirtualnych korzystających z funkcji przekazywania GPU między hostami Hyper-V, ponieważ maszyny te są powiązane z fizycznymi kartami graficznymi zainstalowanymi w hoście.
Do wersji Windows Server 2016 do przekazywania GPU do maszyn wirtualnych wykorzystywano funkcję RemoteFX. Po systemie Windows Server 2019 i Windows 10 w wersji 1809 funkcja RemoteFX została już niedostępne, a do przekazywania karty graficznej można używać wyłącznie funkcji Hyper-V Direct Device Assignment (DDA), podobnie jak w przypadku innych urządzeń PCI/PCIe, w tym urządzeń pamięci masowej NVMe. DDA jest odpowiednikiem funkcji VMware PCI passthrough.
RemoteFX to rozszerzenie protokołu RDP (Microsoft Remote Display Protocol) służące do podłączania urządzeń USB (podłączonych do hosta) do maszyny wirtualnej. W przypadku kart graficznych stosowano odpowiednio RemoteFX vGPU. RemoteFX umożliwiało współdzielenie jednego procesora graficznego przez wiele maszyn wirtualnych, co nie jest możliwe w przypadku funkcji Discrete Device Assignment. RemoteFX ograniczało również ilość dedykowanej pamięci wideo do 1 GB dla każdej maszyny wirtualnej, a maksymalna liczba klatek na sekundę wynosiła 30. W przypadku DDA nie ma takiego ograniczenia pamięci RAM wideo, a liczbę klatek na sekundę można ustawić na 60.
Jeśli korzystasz z systemu Windows Server 2016 Datacenter lub innych wersji i edycji systemu Windows, które wcześniej obsługiwały RemoteFX, możesz zainstalować Aktualizacja systemu Windows w celu całkowitego usunięcia tej funkcji z Hyper-V i uniknięcia potencjalnych luk w zabezpieczeniach. Oficjalna wersja Microsoftu głosi, że RemoteFX zostało usunięte, aby uniknąć luk w architekturze Hyper-V. RemoteFX było atrakcyjne dla środowisk wirtualnych o dużej gęstości, gdy nie było możliwe przypisanie dedykowanej fizycznej karty graficznej do każdej maszyny wirtualnej. Należy pamiętać, że narzędzie DDA działa w wersjach systemu Windows Server (nie w wersjach klienckich, takich jak Windows 10).
Partycjonowanie GPU w PowerShell może być rozwiązaniem w klienckich wersjach systemu Windows, ale kopiowanie sterowników wideo z systemu operacyjnego hosta do systemu operacyjnego gościa (który musi być taki sam jak w systemie operacyjnym hosta) jest skomplikowane. Należy używać maszyn wirtualnych generacji 2. W tym przypadku karta graficzna musi obsługiwać partycjonowanie GPU.
Konfigurowanie przepuszczania GPU w Hyper-V
Wykonaj poniższe kroki, aby przygotować środowisko i skonfigurować przepuszczanie GPU w Hyper-V.
Przygotowanie do konfiguracji przepuszczania GPU
- Upewnij się, że sprzęt i oprogramowanie posiadają wsparcie dla wirtualizacji GPU.
- Włącz funkcje wirtualizacji Intel VT-d lub AMD-V dla Procesora w UEFI/BIOS na hoście Hyper-V.
- Włącz IOMMU. Ustawienie IOMMU można włączyć na różne sposoby w zależności od płyty głównej i wersji UEFI/BIOS. Czasami opcja ta znajduje się w konfiguracji mostka północnego. Można też włączyć IOMMU podczas aktywacji funkcji Intel VT-d lub AMD-V. Sprawdź w UEFI/BIOS funkcję o nazwie „Memory Remap”.
Możesz sprawdzić, czy funkcja IOMMU jest włączona na komputerze hosta Hyper-V, używając polecenia PowerShell (jako administrator):
(Get-VMHost).IovSupport; (Get-VMHost).IovSupportReasonsTrue – włączone; False – wyłączone.
- Usuń wszystkie punkty kontrolne dla maszyny wirtualnej, którą zamierzasz skonfigurować przy użyciu przepuszczania GPU.
Jeśli dla maszyny wirtualnej włączone są automatyczne punkty kontrolne, możesz je wyłączyć za pomocą polecenia PowerShell:
Set-VM -Name VMName -AutomaticStopAction TurnOff
Przepuszczanie GPU w systemie Windows Server
- Aby ustawić pamięć podręczną i limity dla przestrzeni MIMO 32-bitowej (3 GB dla systemów operacyjnych 32-bitowych), uruchom to polecenie PowerShell jako administrator:
Set-VM -Name VMName -GuestControlledCacheTypes $True -LowMemoryMappedIoSpace 3Gb -HighMemoryMappedIoSpace 33280MbAlternatywnie można użyć trzech oddzielnych poleceń:
Set-VM -GuestControlledCacheTypes $true -VMName YourVMNameSet-VM -LowMemoryMappedIoSpace 3Gb -VMName YourVMNameSet-VM -HighMemoryMappedIoSpace 33280Mb -VMName YourVMNameLimity te określają pamięć, która udostępnia urządzenie dla maszyny wirtualnej. Aby ustawić najdokładniejsze wartości limitów MIMO, można skorzystać z skrypt profilu maszyny firmy Microsoft. Optymalne wartości mogą się różnić w zależności od kart graficznych. Jeśli podczas uruchamiania maszyny wirtualnej pojawi się komunikat o braku wystarczających zasobów, należy wyłączyć maszynę wirtualną i zmodyfikować te wartości. 33280 MB jest wykorzystywane dla przestrzeni MIMO większej niż 32-bitowa.
- Sprawdź adres fizyczny urządzenia PCI Express (ścieżkę lokalizacji urządzenia), które jest potrzebną kartą graficzną, którą chcesz przekierować.
Można to zrobić w Menedżerze urządzeń. Menedżera urządzeń można otworzyć, uruchamiając polecenie
devmgmt.msc. W Menedżerze urządzeń:- Kliknij prawym przyciskiem myszy odpowiednią kartę graficzną w sekcji Karty graficzne i wybierz opcję
Propertiesz menu kontekstowego. - W oknie właściwości karty wybierz zakładkę
Details. - W menu rozwijanym wybierz właściwość
Location pathsi skopiuj wartość (wartości mogą się różnić w zależności od komputera).
Możesz również użyć PowerShell do zidentyfikowania ścieżki lokalizacji urządzenia:
Get-PnpDevice | Where-Object {$_.Present -eq $true} | Where-Object {$_.Class -eq "Display"}|select Name,InstanceIdoraz
Get-PnpDevice -Class Display | ForEach-Object { Write-Output "$($_.FriendlyName) has a device id of $($_.DeviceId) and is located at $($_ | Get-PnpDeviceProperty DEVPKEY_Device_LocationPaths | Select-Object -ExpandProperty Data | Where-Object { $_ -like "PCIROOT*" })"; }Wynik powinien zawierać ciąg znaków podobny do tego:
’PCIROOT(0)#PCI(0300)#PCI(0000)’

- Kliknij prawym przyciskiem myszy odpowiednią kartę graficzną w sekcji Karty graficzne i wybierz opcję
- Wyłącz tę kartę graficzną w Menedżerze urządzeń. Kliknij prawym przyciskiem myszy kartę graficzną i wybierz
Disable devicez menu kontekstowego.
- Odłączanie wyłączonej karty graficznej w PowerShell:
Dismount-VmHostAssignableDevice -LocationPath "PCIROOT(0)#PCI(0300)#PCI(0000)" -ForceUwaga:
-Forcejest wymagane, gdy sterownik partycji (opcjonalny) nie jest zainstalowany. Nie jest to sterownik karty graficznej zainstalowanej w systemie operacyjnym gościa. Czasami dostawca urządzenia może udostępnić taki sterownik zabezpieczający dla danego urządzenia. Jeśli zamierzasz zainstalować ten sterownik, należy to zrobić przed odłączeniem urządzenia PCI Express od partycji hosta.Ścieżka lokalizacji użyta w tym poleceniu służy wyłącznie do celów ilustracyjnych i należy użyć własnej wartości.
- Uruchom polecenie, aby przypisać tę kartę graficzną do maszyny wirtualnej z przepustowością GPU poprzez DDA:
Add-VMAssignableDevice -VMName VMName -LocationPath "PCIROOT(0)#PCI(0300)#PCI(0000)" - Włącz maszynę wirtualną i sprawdź, czy fizyczna karta graficzna jest wyświetlana w Menedżerze urządzeń maszyny wirtualnej z systemem Windows wraz z domyślną emulowaną kartą graficzną o nazwie Microsoft Hyper-V video.
- Zainstaluj sterowniki dla karty graficznej w systemie operacyjnym gościa maszyny wirtualnej. Sterowniki graficzne można pobrać z oficjalnej strony internetowej NVIDIA lub AMD.
- Jeśli chcesz odłączyć kartę graficzną od maszyny wirtualnej Hyper-V, zatrzymaj ją i użyj polecenia na hoście:
Remove-VMAssignableDevice -VMName YourVMName -LocationPath $locationPathNastępnie uruchom polecenie, aby ponownie podłączyć kartę graficzną do hosta Hyper-V:
Mount-VMHostAssignableDevice -LocationPath $locationPath
Konfiguracja w systemie Windows 10
W wersjach klienta systemu Windows, takich jak Windows 10 i Windows 11 (począwszy od kompilacji Windows 10 1903), procedura konfiguracji przekierowania GPU w Hyper-V jest inna i jest możliwa przy użyciu metody partycjonowania GPU:
- Sprawdź, czy Twoja karta graficzna obsługuje partycjonowanie GPU w systemie Windows 10 za pomocą polecenia PowerShell:
Get-VMPartitionableGpuW systemie Windows 11 polecenie to brzmi:
Get-VMHostPartitionableGpu - W celu przepuszczenia GPU do maszyny wirtualnej używa się polecenia cmdlet
Add-VMGpuPartitionAdapter. Należy jednak skopiować sterowniki graficzne z komputera hosta Hyper-V do maszyny wirtualnej. Należy pamiętać, że wersja sterownika musi być taka sama. Do skopiowania sterowników można użyć bezpłatnego skryptu Easy-GPU-PV , ponieważ jest to skomplikowany proces. Pobierz ten skrypt w pliku ZIP i rozpakuj zawartość archiwum ZIP do folderu na hoście Hyper-V. Skrypt ten może korzystać z parawirtualizacji GPU, wykorzystując mechanizmy stosowane w systemie Windows Subsystem for Linux (WSL2) i Windows Sandbox. - Otwórz PowerShell jako administrator i uruchom polecenie, aby zezwolić na wykonanie skryptu:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass -ForceSet-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser - Wyłącz maszynę wirtualną Hyper-V. Uruchom skrypt z folderu, do którego został rozpakowany pobrany plik, aby skopiować zainstalowane sterowniki graficzne z hosta Hyper-V do maszyny wirtualnej Hyper-V i zainstalować je na tej maszynie:
.Update-VMGpuPartitionDriver.ps1 -VMName YourVMName -GPUName "AUTO" - Skonfiguruj maszynę wirtualną Hyper-V, aby przygotować ją do funkcji GPU passthrough i powiązania karty graficznej:
Set-VM -VMName VMName -GuestControlledCacheTypes $true -LowMemoryMappedIoSpace 1Gb -HighMemoryMappedIoSpace 32GbAdd-VMGpuPartitionAdapter -VMName YourVMName- W przypadku aktualizacji sterowników graficznych na hoście Hyper-V należy również zaktualizować sterowniki graficzne na maszynie wirtualnej Hyper-V. Maszyna wirtualna musi być wyłączona.
.Update-VMGpuPartitionDriver.ps1 -VMName YourVMName -GPUName "AUTO" - Jeśli chcesz usunąć kartę graficzną z maszyny wirtualnej, możesz użyć polecenia:
Remove-VMGpuPartitionAdapter -VMName "YourVMName"
- W przypadku aktualizacji sterowników graficznych na hoście Hyper-V należy również zaktualizować sterowniki graficzne na maszynie wirtualnej Hyper-V. Maszyna wirtualna musi być wyłączona.
Jeśli karta graficzna została pomyślnie podłączona do maszyny wirtualnej, w Menedżerze urządzeń maszyny wirtualnej powinna być widoczna odpowiednia karta graficzna. Zobaczysz również efekty wizualne motywu pulpitu systemu Windows gościa, takie jak przezroczystość itp.
Należy pamiętać, że niektóre gry i aplikacje mogą nie działać nawet po skonfigurowaniu przepuszczania GPU. Może się to zdarzyć, gdy aplikacja wymusza sprawdzenie zgodności karty graficznej. Informacje o podłączonej karcie graficznej w systemie operacyjnym gościa różnią się od informacji w systemie operacyjnym hosta. Niektóre aplikacje mogą przeprowadzać kontrolę „działania w maszynie wirtualnej”.
Jeśli aplikacje korzystające z OpenGL nie działają w maszynie wirtualnej, w niektórych przypadkach pomocne może być zainstalowanie Pakiet zgodności z OpenGL .
Podczas korzystania z metody partycjonowania GPU dla systemów Windows 10 i Windows 11 model karty graficznej wyświetlany w Menedżerze urządzeń różni się od modelu fizycznej karty graficznej wyświetlanego na hoście Hyper-V. Można zobaczyć specjalny sterownik Microsoft dla tego urządzenia. Narzędzia specyficzne dla dostawcy, takie jak Panel sterowania NVIDIA (lub Panel sterowania AMD), nie są dostępne w maszynie wirtualnej Hyper-V.
Kolejny problem, który może wystąpić, pojawia się w przypadku zamknięcia połączenia RDP bez rozłączenia się z sesją RDP. W takim przypadku cała pamięć GPU może zostać odłączona, a wszystkie aplikacje korzystające z GPU wyświetlą komunikat o braku dostępu do pamięci wideo. Aplikacje te przestaną działać, a ponowne połączenie przez RDP nie rozwiąże problemu. Konieczne będzie ponowne uruchomienie aplikacji korzystających z procesora graficznego.
Rozwiązywanie problemów z przepustowością procesora graficznego
Jeśli skonfigurowałeś przepustowość procesora graficznego Hyper-V i podłączyłeś kartę graficzną do maszyny wirtualnej Hyper-V, ale karta graficzna nie działa poprawnie, sprawdź, co następuje:
- Upewnij się, że zainstalowane są najnowsze sterowniki graficzne i nie występują żadne błędy związane ze sterownikami. Otwórz Menedżera urządzeń i sprawdź stan urządzenia oraz sterownika. Należy zainstalować sterowniki pobrane z oficjalnych stron internetowych dostawców (NVIDIA, AMD, Intel), a nie za pośrednictwem usługi Windows Update.
- Upewnij się, że przydzielono wystarczającą ilość przestrzeni MIMO dla maszyny wirtualnej.
- Sprawdź, czy konfiguracja GPU passthrough jest obsługiwana przez dostawcę Twojej karty graficznej. Nie wszystkie karty graficzne z serii klienta obsługują tę funkcję. Dostawcy mogą preferować włączanie GPU passthrough tylko dla najlepszych kart graficznych.
- Aplikacja działająca w maszynie wirtualnej musi mieć wsparcie dla Twojej karty graficznej i jej sterowników, aby działać poprawnie.
- Włącz zasadę grupy, aby korzystać z procesora graficznego podczas łączenia się z maszyną wirtualną za pomocą Pulpitu zdalnego:
Computer ConfigurationAdministrator TemplatesWindows ComponentsRemote Desktop ServicesRemote Desktop Session HostRemote Session EnvironmentUse hardware graphics adapters for all Remote Desktop Services sessionsUstaw wartość zasady grupy na
Enabled. - Jeśli pojawi się błąd typu „T Operacja nie powiodła się, ponieważ nie znaleziono obiektu ” lub Błąd 12 , spróbuj dodać klucze rejestru w
HKEY_LOCAL_MACHINESOFTWAREPoliciesMicrosoftWindowsHyperVz następującymi wartościami:
RequireSecureDeviceAssignment = 0 (REG_DWORD)RequireSupportedDeviceAssignment = 0 (REG_DWORD)Wartości te można ustawić za pomocą poleceń PowerShell:
Set-ItemProperty -Path "HKLM:SOFTWAREPoliciesMicrosoftWindowsHyperV" -Name "RequireSecureDeviceAssignment" -Type DWORD -Value 0 -ForceSet-ItemProperty -Path "HKLM:SOFTWAREPoliciesMicrosoftWindowsHyperV" -Name "RequireSupportedDeviceAssignment" -Type DWORD -Value 0 -Force - Wyłącz sprawdzanie sterowników graficznych przez hiperwizor wewnątrz maszyny wirtualnej. Konfigurację tę można wykonać w Enterprise Windows Driver Kit (WDK).
- Zamontuj plik ISO WDK na wirtualnym napędzie DVD maszyny wirtualnej.
- Uruchom
E:LaunchBuildEnv.cmd(gdzieE:to wirtualny napęd DVD maszyny wirtualnej), a następnie uruchom poleceniepowershell. - Przejdź do katalogu, w którym znajduje się skrypt
Remove-HypervisorChecks.ps1. - Uruchom polecenie, aby usunąć sprawdzanie hiperwizora dla sterownika wideo (na przykładzie NVIDIA):
./Remove-HypervisorChecks.ps1 -Nvidia -DriverPath "C:path-to-driverpackage.exe" - Poczekaj, aż zakończy się wykonywanie skryptu.
- Skopiuj przygotowany sterownik (plik patched-driver.zip ) do maszyny wirtualnej, włącz tryb testowy na maszynie wirtualnej i zainstaluj sterownik w systemie operacyjnym gościa.
- Jeśli napotkasz Błąd 43 , upewnij się, że magistrala PCI karty graficznej i dźwiękowa (karty graficzne NVIDIA mogą również posiadać funkcje dźwiękowe) są połączone podczas korzystania z funkcji passthrough karty graficznej w maszynie wirtualnej.
- Jeśli podczas uruchamiania polecenia pojawi się następujący błąd:
Update-VMGpuPartitionDriver.ps1 -VMName "YourVMName" -GPUName "AUTO"Błąd ten może być spowodowany obecnością wielu partycji (woluminów) na wirtualnym dysku twardym. Spróbuj ustawić atrybut ukrycia dla partycji niesystemowych (niebędących systemem operacyjnym) lub tymczasowo usunąć te partycje po skopiowaniu potrzebnych danych. Alternatywnym rozwiązaniem jest jawne określenie wymaganej partycji systemowej (OS) w skrypcie lub poleceniu PowerShell.
Wnioski
Korzystanie z maszyny wirtualnej z funkcją GPU passthrough na hoście Hyper-V może w niektórych przypadkach stanowić optymalne rozwiązanie, jednak należy pamiętać o istniejących ograniczeniach. Do korzystania z oddzielnej karty graficznej w maszynach wirtualnych zazwyczaj zaleca się stosowanie sprzętu klasy serwerowej oraz systemów operacyjnych Windows Server. Przed rozpoczęciem konfiguracji należy sprawdzić, jakie oprogramowanie i sprzęt są obsługiwane. Nie zapomnij wykonać kopii zapasowej maszyn wirtualnych Hyper-V, aby uniknąć utraty danych i czasu, jeśli coś pójdzie nie tak podczas konfiguracji karty graficznej dla maszyn wirtualnych.