Maintenance - We're currently working on things and you might experience some issues. Should be wrapped up soon!

This post has been de-listed

It is no longer included in search results and normal feeds (front page, hot posts, subreddit posts, etc). It remains visible only via the author's post history.

3
Successful GPU passthrough, next steps questions
Post Body

Seeking wisdom/answers at the end of the post, first here is some information

Background:

Last weekend I took the plunge and installed a new mobo/cpu and Manjaro. I intend to upgrade the gpus in the future. I have the passthrough working with a spare keyboard, mouse and monitor hooked up to guest. I mostly followed https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVMF, supplemented by https://gist.github.com/ulkeshkosh/5f1b17c00cf6844c9f4fd911f4983a64

One gpu is for gaming on windows, the other is for gaming/video/photo editing on Linux. Basically I want to attempt to set up as many games on Linux as possible but have a Windows fallback for multiplayer games that my friends play.

Requirements (End goals):

  • in game voip works on guest for games that have it
  • teamspeak/discord with push to talk activated by mouse key on host at all times (this may be impossible?)
  • Solid graphics 1440p above 60 FPS (dont really care about 144, but it would be nice to be in 80s)
  • OBS running on host for streaming or recording
  • Non physical switching of main monitor for guest (changing where it's plugged in each time)
  • Non physical switching for main mouse and keyboard

Specs:

  • Ryzen 3900
  • Aorus Master x570
  • 2 X 980ti Asus Strix (yes this was a pain but its what I got lol, and the wiki helped)
  • 1440p main monitor
  • Manjaro

Config dump:

domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>WindowsBox</name>
  <uuid>670cdfb1-0b94-4409-8114-0a28d4addb4c</uuid>
  <metadata>
    <libosinfo:libosinfo xmlns:libosinfo="http://libosinfo.org/xmlns/libvirt/domain/1.0">
      <libosinfo:os id="http://microsoft.com/win/10"/>
    </libosinfo:libosinfo>
  </metadata>
  <memory unit='KiB'>24674304</memory>
  <currentMemory unit='KiB'>24674304</currentMemory>
  <vcpu placement='static'>16</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='4'/>
    <vcpupin vcpu='1' cpuset='5'/>
    <vcpupin vcpu='2' cpuset='6'/>
    <vcpupin vcpu='3' cpuset='7'/>
    <vcpupin vcpu='4' cpuset='8'/>
    <vcpupin vcpu='5' cpuset='9'/>
    <vcpupin vcpu='6' cpuset='10'/>
    <vcpupin vcpu='7' cpuset='11'/>
    <emulatorpin cpuset='0-1'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-4.1'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/ovmf/x64/OVMF_CODE.fd</loader>
    <nvram>/var/lib/libvirt/qemu/nvram/WindowsBox_VARS.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
    <hyperv>
      <relaxed state='on'/>
      <vapic state='on'/>
      <spinlocks state='on' retries='8191'/>
      <vendor_id state='on' value='1234567890ab'/>
    </hyperv>
    <kvm>
      <hidden state='on'/>
    </kvm>
    <vmport state='off'/>
    <ioapic driver='kvm'/>
  </features>
  <cpu mode='host-passthrough' check='none'>
    <topology sockets='1' cores='8' threads='2'/>
    <feature policy='require' name='topoext'/>
  </cpu>
  <clock offset='localtime'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
    <timer name='hypervclock' present='yes'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>

Questions:

  1. Is looking glass or any other frame relay the best way to pass video back through my host video outputs?
  2. Any comments on my config dump? Suggestions?
  3. Looking at input management, Evdev and Synergy seem to be the main options with tradeoffs, any other options I should consider/try in your experience?
  4. Is it possible to have push to talk for a host program on a mouse being used on guest?
  5. Every time I restart my computer, I have to restart the libvirtd service several times before it doesn't have errors. Is this common? (just a general question, I can look up the errors)
  6. I am thinking physical solution for the audio, I already have a little 4channel board. If needed I could put a sound card I own back into the rig, worried about how much it constricts airflow to the gpu though. Anyone here have a physical setup they like/ point me to for ideas?
  7. To be able to have a solid GPU on both host/guest, when I upgrade my cards, will I have to upgrade both of them? Or is there some sort of configuration I am missing/not read about. Figure this is the cost of wanting performance in both spaces

Thank you for your time, please don't feel obligated to answer more than one question.

Author
Account Strength
100%
Account Age
14 years
Verified Email
Yes
Verified Flair
No
Total Karma
20,929
Link Karma
1,087
Comment Karma
19,842
Profile updated: 4 days ago
Posts updated: 7 months ago

Subreddit

Post Details

We try to extract some basic information from the post title. This is not always successful or accurate, please use your best judgement and compare these values to the post title and body for confirmation.
Posted
4 years ago