A
A
Anatoly Talugin2017-03-16 11:58:58
System administration
Anatoly Talugin, 2017-03-16 11:58:58

How to forward a video card to the Windows Server 2016 hypervisor?

Hello! I already asked a question about the implementation of the idea of ​​creating a "home" server with "thin" clients connected to it via RDP. I was then advised to forget about RDP, since "graphics" (modeling, games) is extremely important for me. And it was suggested to lay the HDMI cable just from the server to the monitor. But recently I read the news about the fact that the Windows Server 2016 hypervisor has the ability to "forward a video card". Tell me how to implement it better? Will there be games without lags? And do you need a thin client? Thanks...

Answer the question

In order to leave comments, you need to log in

3 answer(s)
A
Artem @Jump, 2017-03-16
@Marusis

Microsoft has a technology for forwarding a video card to a VM.
That is, it is theoretically possible, but one must understand that the technology is not ideal, and in any case, this is a decent overhead.
That is, the game will run on a thin client and will support 3D graphics that will be calculated on the server's video card. But this bundle will work much slower than local work on a computer with the same video card.
That is, if you have a lot of money for hardware and have a desire to make such a scheme, then it is quite possible to achieve adequate performance.
Well, lags not related to 3D - a banal transfer of video content, it is implemented perfectly on RDP, but not ideally. That is, watching movies or video games is quite real, but the quality is certainly far from what is local.

D
Dmitry Shitskov, 2017-03-16
@Zarom

Not quite to your question, but regarding the remote launch of games, you may be interested in this project.
moonlight-stream.com

C
chupasaurus, 2017-03-16
@chupasaurus

Needed: two video cards (integrated + discrete working setup), the forwarded video card should not be GeForce (not sure about Titan, Quadro work; the reason is that the driver for custom cards checks if it is running in a virtual machine and if so, it refuses to work with an error code 43). FPS loss - 5-10%.
MS Blog article , Powershell script to forward 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

In general, there is a Steam Link for this (you can skip anything there).

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question