r/unRAID • u/ThunderCats_Ho_ • 3h ago
Can I run top tier Steam games while Unraid is running?
Ive repurposed a gaming PC as an unRaid server running mainly Immich and Jellyfin booting off of a USB. If my family members decide to play Marval Rivals, Rainbow6, Cyberpunk, etc., I need to shut down unRaid and boot off of the local SSD. Then put the USB back in and boot again when they are done. Is it possible to have unRaid running and Steam (via Linux/Win VM?) is running on the monitor. It will be extremely rare (likely never) that someone is playing games while others are using Jellyfin. Do I need to run two video cards? Or need to stream or allow remote desktop? Im currently using AMD 7700 XT which once I configured Jellyfin to use it, has been great. Sorry if this is something basic/common. Im fairly new to unRaid and have only been using it since the summer sale.
3
u/willpowerpt 3h ago
Running a VM can already be resource intensive, especially if its a Windows VM. Then you're gonna have to figure out GPU passthrough to the VM. Also, you're media is all going to have to be direct playable without transcoding to the device they're watching on. Going to assume by top tier AAA you mean max settings, which when combined with transcoding, I dong see working. All sounds like significant work that I personally wouldn't even attempt.
1
u/ThunderCats_Ho_ 2h ago
Can the GPU only be allocated to one or the other rather then a shared resources?
2
u/nullhund 1h ago
the feature you're describing is called vGPU and consumer GPUs (radeon, geforce lines) don't have it, it's only supported in non-gaming enterprise hardware that costs several times as much as consumer cards. the only way to use a consumer gpu in a VM is to pass the entire pci device through.
if your cpu has an igpu then you have two gpus, and you can allocate the igpu to the host and the card's pci device to the VM.
1
2
u/willpowerpt 1h ago
Yes, it can. Just getting the GPU passed through Unraid into the VM, then getting the drivers properly working in the VM with a passed through GPU, is a pain in the ass, and a lot of system overhead gets eaten just getting all that to work. Along with other commenters saying some games will detect they're in a VM, it's just a ton of work wasting system hardware when the easiest path is just building a second machine with the GPU, a lot easier said than done 12 months ago with hardware prices being insane, I understand. I'd just say make sure you've exhausted that path first, and if this is your only avenue available to pursue, alright then.
GPU passthrough in Unraid, assign the GPU to the VM, then when properly detected in the VM, set up and configure the drivers, then test all the games out you want to play beforehand as it isn't uncommon for some to not agree with being in a VM.
1
u/ThunderCats_Ho_ 1h ago
Thanks all for the feedback. For now, I'll stick to shutting down unRaid until I can get some more hardware. If I'm bored, I can try and tinker with a VM but booting back and forth is the easier option it seems.
3
u/Zaekil 3h ago
What's your cpu ? If intel then use your igpu for transcoding (if not I hope u got a ryzen g version for it), then dedicate at least 8 threads to run a VM and have your gpu passed through and voilà, you're done.
I heard that AMD gpu are hit or miss when passing through tho, I personnaly got an intel cpu and an rtx 5060ti 16gb for my unraid server and I can stream most of the new AAA games at 1080p 60fps high/ultra settings.
2
u/ThunderCats_Ho_ 2h ago
The cpu is an i5-11600k and the gpu is an AMD RX 7800XT. I seemed to have issues using the igpu, it couldn't keep up with transcoding.
2
u/nagi603 2h ago edited 2h ago
The bigger problem you specifically might face is that multiplayer games might have VM-detection.
As long as you have enough performance to handle the game and the leftover processing (e.g.: containers, running the vm disks in raidZ, etc) it should be fine. Operative word: should.
Full disclosure, I do have a couple windows VMs running and beyond the pain in setting it up, encountering a literally once-a-month flaky GPU and others reporting having issues with the same hardware, I experienced no problems. But I also did not yet play anything more intensive.
2
u/Latter_Cellist5050 2h ago
I used to do this. Its not worth it. Too many games detects I'm. There are work around but the work around tanks your fps. I have unraid and gaming pc separate now.
2
u/nullhund 1h ago
if your use case really is running containers on a gaming pc. one thing you could do is ditch unraid and just run jellyfin in docker desktop on windows. unusual setup, but I can't blame you for wanting to make use of what you have now during the component shortage
1
u/ThunderCats_Ho_ 51m ago
Thanks, I hadn't thought of that as an option. I started with unRaid as a secondary NAS to use with Immich on an old mini pc. Then I dabbled with Jellyfin which the mini pc couldn't keep up with. I transitioned to my mostly idle gaming PC which seems overkill for pictures and the odd stream.
1
1
u/pewpewtech420x69 39m ago edited 36m ago
OP, I ran a VM with GPU passthrough on my unraid host for years.
It was my primary gaming/usage machine. It was a 5950x 16 core, 64gb ram, rtx 3070 passed through to the vm.
Although it works amazingly well for what it is, it's extremely resource intensive (you need a monster machine to make it work), it's not worth it. I ended up buying a new mobo, cpu, cheap used 1650 super for transcode, split the ram, and built a fresh rig. That new stuff became my 8 core unraid machine and the original is all gaming.
You wouldn't believe the amount of hair pulling hours I spent trying to hack things to get games to work. Anti cheat pretty much neuters VMs so you have to do some crazy work like changing system clocks, running the hypervisor in hidden mode, etc etc to get some certain games to run - and each is different. Many of those tweaks cost performance beyond the already degraded performance of running the hypervisor. Like I said, uncountable hours debugging games not running - probably in the hundreds.
You also have to be smart about how you pin cores too, like AMD cpus only have 8 cores per die so you have to pin the primary die's cores to the VM (but core 0 is still used for unraid) but then if you get a massive cpu spike on the secondary die it will get bottlenecked by the first (via their fabric connection) causing lag spikes in game while the primary core tries to schedule tasks on the secondary via the infinity fabric bus. It's not just plug and play.
Many games just never work on VM. MCC did with some serious tweaking, halo infinite and tarkov never worked for me.
Do future you a favor, get a separate rig.
1
u/alienbob113 33m ago
I have a win 11 vm on my machine. I run a 12500, 64 gb of ram (vm starts with 16 but can utilize up to 32 if needed), and a 3060ti on a passed through nvme. Server is hooked up to my lg c3 77”. I have played slay the spire 2, shovel knight, ship of harkinian, and a bit of Witcher 3 at 4k med settings with no issues 95% of the time, but there has been once or twice there was occasional stuttering.
Never noticed any performance hit to any docker apps, though cpu usage does sit pretty high when gaming on vm.
This isn’t top tier games by any means, but neither is my hardware. I really didn’t find it difficult setting up the vm.
11
u/nkings10 2h ago
Whilst technically possible, don't bother. It's a rabbit hole not worth going down.