Introducing Kaasimir - GPU Testing Made Simple

The ReactOS Hackfest 2017 started yesterday and I held a presentation today about a project I have been working on for the past few weeks.

An oft-repeated criticism is ReactOS' inability to run on anything else than a virtual machine. While our real hardware support has become better and better over the recent years, we still have a hard time getting an AMD or NVIDIA graphics driver to work. This is especially painful considering that many people want to run games on ReactOS, which rely on 3D acceleration and hence need a working native GPU driver. Debugging such problems is difficult for the average ReactOS developer, who doesn’t have a trove of old computer hardware and has to rely on virtual machines. None of the virtual machine hypervisors out there emulate an AMD or NVIDIA graphics card.

In my talk, I introduce Kaasimir, a server that is capable of passing a real graphics card to a virtual machine. This is not rocket science since we have Intel VT-d technology. But passing a graphics card only makes sense if we can also capture its VGA output signal.
I solve this problem by adding an eRIC KVM-over-IP card to the spectacle. It captures the VGA signal of the connected GPU and also offers a virtual keyboard and mouse that are similarly passed to the VM. All of that is made available via a hybrid Windows/Linux Remote Desktop with WinDbg installed to enable a smooth testing and debugging experience.

My slides are in the press-media repository.
And here comes the video of the talk: