A few Questions...


eek2121

Recommended Posts

New user, I'm not sure if this is the right place for this, but I'll start here.  I've been eyeing unRAID for a while after having discovered it on LinusTechTips.  It looks like it would potentially be a good solution for my use case, but I had a few questions.  I am a developer full time, and I do both graphics and video content creation part time.  I also game on my PC in my free time (despite having 3 kids!).  Right now I use Windows predominantly, since I game quite a bit.  I keep a Linux VM for development (WSL is still too buggy and slow) and I use Windows for everything else, including the editor where I write my code.  Ideally I'd like to be able to use a Linux distro in a nice dedicated full screen environment with out having the overhead of Windows underneath.  When it's time to play games or work on video/graphics content, I would like to be able to quickly switch to Windows, forget about work, and game.  My system specs are a Threadripper 1950X, MSI X399 Gaming Carbon motherboard, 32 GB of RAM, 1TB Samsung 960 EVO, and a GTX 1080ti.  My questions are:

 

  1. Do I need a second graphics card to make this work?  I would need to do PCI passthrough for gaming obviously.  Is it possible to suspend a VM and switch to another on the fly without needing a second graphics card?
  2. How is Threadripper support?
  3. What is the overhead like?  Can I expect a framerate drop in games over running Windows natively?  What about the CPU intensive stuff?  What kind of drops should I expect?
  4. Ryzen Master in Windows allows me to tailor NUMA specific settings to games, as well as overclock.  I assume this would no longer work, correct?
  5. How easy is it to set things up?  Will I be able to use a simple GUI or will I have to edit a bunch of configs?

 

Thanks!

 

 

Link to comment

My understanding is that there are performance issues with Ryzen / Threadripper CPUs with passthrough. It is related to nested page tables (NPT) which you can search and read about.

 

Notwithstanding - you could make your use case work with a single GPU passthrough (at least I think you could, been meaning to try this but haven't yet):

 

You could have two VMs, each configured to pass through the same GPU and USB controller (for keyboard/mouse). You could start one VM (say its Linux), do your work, and when you want to switch to the Windows VM, you could hibernate the Linux VM (not via the OS, but from the hypervisor, using two clicks of the unRAID Web UI). And then start up the Windows VM. When you are done gaming, you can hibernate the Windows VM, and unhibernate the Linux VM. (You'd probably have to do the hibernate / unhibernate from your phone for obvious reasons). So the GPU and USB passthroughs would tag team across the 2 VMs. Would only take 15-20 seconds (estimated) to do the switch. As a programmer you might be able to write a little code that would remotely execute a little program running on the unRAID Linux, that would programmaticly do the hibernate / unhibernate, so you'd just click a button on the Windows GUI (or run a command on Linux) and next thing you'd see is the other OS).

 

A second GPU would actually make the passthrough and physical setup more complex. In addition to needing the two GPUs, you'd need 2 USB controllers to be passed through, and your motherboard may or may not have enough controllers to have one for unRAID, and one each for the two VMs (we're talking controllers not ports). But if it did, you need a USB switch and two inputs on your monitor. Probably take about the same 15-20 seconds to switch the USB and monitor input. The other OS would continue running - so if you want to run a lengthy compile, for example, in Linux while you game, this would be the way to go. (I use a similar setup for my monitor and mouse to share my keyboard/mouse/monitor between my unRAID VM and a laptop.) You could also use a KVM if  you can find a reasonably priced KVM with HDMI.

 

The other idea would be to run something like NoMachine (or a simple SSH session with putty) and run Linux without passthrough. Then you could run it in a window on the Windows desktop. That would probably be my first chose actually, although the other is a little more interesting.

 

Getting back to Threadripper, suggest reviewing the thread below (especially the latter posts as several early issues were already fixed with unRAID updates) below addressing issues with Ryzen / Threadripper CPUs with Linux KVM (unRAID VM hypervisor):

 

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.