Self-Hosted "Cloud" Gaming Server -- GPU Pass-Through for Multi-User Access

Introduction


Thanks for reading my post. Your feedback is appreciated. I'll try to format this in a way that doesn't waste your time.

DISCLAIMER: I’m more interested in the why than the how, as I’m aware that there is already a plethora of guides on GPU pass-through.

DISCLAIMER #2: I didn’t spend a lot of time researching before I posted. Feel free to redirect me as needed to other sources.


The Meat and Potatoes


Let's discuss the implementation of a gaming server and why I would do such a thing.

Scenario: Four to six people living together, all of whom like to play video games. They all own a desktop of some variety, but only one or two of them have gaming PCs.

Now, it’s important to understand that most of the desktops in this scenario cannot be upgraded with full size GPUs, nor do they meet the power requirements.

Enter the concept of the gaming server. The goal is to provide each user with a mid range video card. Let’s set the performance in the ballpark of an RX 560 to an RX 580 or GTX 1060. The end result will likely be a mix to suit per user needs.


Now, here's the questions:
  1. Is a gaming server more cost effective than buying individual gaming PCs?

  2. Is the convenience and and space saving worth the time to setup and manage?

  3. How can I make this scalable to accommodate more users/higher performance in the future?


I suppose in order to answer those questions, you'll need some more information. For starters, we can't afford new equipment in either situation. Used enterprise solutions are cheap, but then so are 5 year old desktops.

It’s also worth noting that I already have a server rack installed with free space available. It would be a heck of a lot more convenient for each user to keep their existing micro PCs, rather than plopping a big ol’ honkin’ desktop on their workspace.

My other concern is the amount of time I’m going to spend maintaining this system after it’s up and running. I don’t know how reliable I can make it. Everything from adding new games to swapping GPUs for higher performance. It’s also an important fact to point out that I currently plan to use Proxmox as the hypervisor, and Linux VM’s/CT’s as the Guest OS. 95% of the games we wish to play run natively on Ubuntu or through Valve’s Proton application bundled with Steam.


I'll end the post here. Feel free to make suggestions for edits if clarification is needed or I left out important details. Thank you for your time.

–Wyatt

That could go either way, depends on what hardware you get at what price. Although the individual desktops are probably going to edge out the server in many cases for price/performance.

A lot of your questions really depend on what you can manage to find in used hardware, or what you are planning to buy. I would need to know more details on what sort of server hardware setup you are thinking of.

1 Like
  1. If you already have the server available, yes.
  2. No.
  3. Likely going to be quite difficult and will sit in the realm of near SysAdmin level of dedication.
1 Like

For Nvidia you need to use Nvidia Grid, which is a very expensive subscription based software
For amd you need MxGPU which needs AMDs Pro level gpus

I think, I’ve had the same idea but for a cyber cafe

1 Like

So more or less something like “7 Gamers 1 CPU” only instead of being directly connected to the server users are to play through remote terminals in the form of their weak pc …

Or something like Wendell did…



If you don’t have $$$, it probably won’t work out. It can be done theoretically but not cheaply. And probably more sense would have to buy some cheap pc from the current era. Even GTX 460 1GB in low resolution and details is able to handle some of the 2018 games at 25fps.
If these games were to be something very undemanding, maybe they could do it, but probably the current pc has a better gpu than such a cheap solution would have.
2 Likes

Really appreciate all the feed back, thanks guys.

Some of you asked about hardware I would be using. I have only done minimal research on what I can get for “relatively” cheap. From browsing eBay, it seams I can get refurbished systems with a GTX 1050TI in them for around $375 US. I could obviously do better if I purchased used machines that haven’t been refurbished yet and installed the GPU’s myself.

As for servers, I’m not sure what the best route is. One option is to find used pre-built 2U servers like a Dell R710 and install dual RX 570’s. Of course this would require more than one physical server.

Another option would possibly utilize used crypto-mining motherboards and chassis, but this in an area I have little experience in. I doubt I’ll have full x16 or even x8 PCIe lanes available for each card. I also don’t think I can find a board that supports enough RAM and processing power.

And the 3rd and most likely option, is to purchase a used server motherboard with dual Xeons and a plethora of PCIe lanes with physical x16 slots. I already have two 4U Rosewill server chassis that will accept such large boards.

I also don’t know how much CPU horsepower this setup will require. I don’t want to create a system that can’t keep up with at least 4 GPUs running at max load. The games we will be running are mostly esports games and probably won’t have huge CPU requirements. The heaviest game we will be running simultaneously would be the 2016 DOOM. Games like Witcher 3 or GTA would only be run as a single instance. Not 4 simultaneous game streams.

Thanks again for your input.

P.S.
I’ve mentioned “inexpensive” a few times. I realize that there will be no such thing as a “budget” gaming server. We have possibly 6 people who are willing to through cash into this project, but since it’s JUST a gaming server and purely for entertainment, we don’t want to spend unnecessary amounts. We aren’t Linus Tech Tips. :stuck_out_tongue:

Look at the tests of typical cpu per game, this should give you a preview of the situation regarding cpu needs.
But we’re rather talking about very powerful cpu with many cores.
2 or 4 cores per player. Dedicated gpu per player. And it would be useful with 4 / 8GB RAM per player. You also need some RAM and cores for the host itself. Add a disk subsystem that will be able to support six players.

You would have to calculate the final costs very accurately but I’m afraid it might be uninteresting. If this is to be a project for the principle of the project itself, it’s ok. But if it is to be a cheaper alternative instead of pc per player then …
If you buy six graphics cards, how much will you spend on the rest of the guts to make six cheap pc vs how much you will spend on such a server.
It will be art for art’s sake, not cheaper and more efficient … imho

These types of ideas are quite old and many people have had them for many years. The problem is that it is usually better and cheaper to simply buy a pc per player instead of creating a central unit.
Google can afford such solutions with Stadia or LTT. But even LTT at the end of the day when creating its LAN center used pc per player …

1 Like

I was thinking of a similar setup but for commercial use.

i am looking for a server which can handle 20 concurrent users playing AAA game at 1080p

I am going to discuss only CPU and GPU, since rest are irrelevant.

For CPU i am thinking Threadripper

For GPU

  1. I initial thought of getting 2 RTX Quadro 6000 but seeing the license costs i am going to drop it.
  2. If i can work out VIFO then perhaps i can use consumer grade cards i.e 4 RTX 2080

Is it doable for me if i go for plan 2, get VIFO working for 4 RTX 2080 to setup 20 VMs

Games catalog (PUBG, Fortnite, CS:GO, Fifa, COD whatever latest, LOL, Overwatch, Apex Legends and other typical esport games)

tenor