Задать вопрос

Как пробросить видеокарту в гипервизор Windows Server 2016?

Здравствуйте! Я уже задавал вопрос про реализацию идеи создания "домашнего" сервера с подключением к нему "тонких" клиентов по RDP. Мне тогда посоветовали про RDP забыть, так как для меня крайне важна "графика" (моделирование, игры). И было предложено проложить кабель HDMI просто от сервера до монитора. Но недавно прочел новость про то, что в гипервизоре Windows Server 2016 появилась возможность "проброса видеокарты". Подскажите как это лучше реализовать? Будут ли игры без лагов? И нужен ли тонкий клиент? Спасибо...
  • Вопрос задан
  • 1867 просмотров
Подписаться 2 Оценить Комментировать
Ответ пользователя chupasaurus К ответам на вопрос (3)
chupasaurus
@chupasaurus
Сею рефлекторное, злое, временное
Нужны: две видеокарты (интегрированная + дискретная рабочий сетап), пробрасываемая видеокарта не должна быть GeForce (не уверен про Titan, Quadro работают; причина - драйвер для пользовательских карт проверяет, запущен ли он в виртуалке и если да, то отказывается работать с кодом ошибки 43). Потери FPS - 5-10%.
Статья из блога MS, скрипт на Powershell для проброса NVidia Quadro K1200
$MyNVIDIA = Get-PnpDevice | Where-Object {$_.Class -eq “Display”} | Where-Object {$_.Service -eq “nvlddmkm”}
$MyNVIDIA | ft -AutoSize

$MyNVidiaQuadroK1200 = Get-PnpDevice -PresentOnly| Where-Object {$_.Class -eq “Display”} | Where-Object {$_.Service -eq “nvlddmkm”} | Where-Object {$_.FriendlyName -eq “NVIDIA Quadro K1200”}
$MyNVidiaQuadroK1200 | ft -AutoSize

Disable-PnpDevice -InstanceId $MyNVidiaQuadroK1200[0].InstanceId -Confirm:$false

$MyNVidiaQuadroK1200 = Get-PnpDevice -PresentOnly| Where-Object {$_.Class -eq “Display”} | Where-Object {$_.Service -eq “nvlddmkm”} | Where-Object {$_.FriendlyName -eq “NVIDIA Quadro K1200”}
$MyNVidiaQuadroK1200 | ft -AutoSize

$DataOfGPUToDDismount = Get-PnpDeviceProperty DEVPKEY_Device_LocationPaths -InstanceId $MyNVidiaQuadroK1200[0].InstanceId
$DataOfGPUToDDismount | ft -AutoSize

$locationpath = ($DataOfGPUToDDismount).data[0]
$locationpath | ft -AutoSize

Dismount-VmHostAssignableDevice -locationpath $locationpath -force

Get-VMHostAssignableDevice

Set-VM RFX-WIN2016STD -GuestControlledCacheTypes $True -LowMemoryMappedIoSpace 2000MB -HighMemoryMappedIoSpace 4000MB
Get-VM RFX-WIN2016STD | fl *

Add-VMAssignableDevice -LocationPath $locationpath -VMName RFX-WIN2016STD

А вообще есть Steam Link для этого (прокидывать можно всё что угодно там).
Ответ написан
Комментировать