In my own experience, the gaming problem is almost solved when you have Nvidia Hardware with proprietary drivers, but AND and Intel drivers are really behind in that space. Hopefully, with Vulkan gaining market shares, we shouldn't have driver problems in the future (but I don't expect this future to come soon, maybe 2 years or so).
If this were Slashdot we couldn't even have the discussion without being swamped by fanboys claiming completely false things about Linux gaming. I've been trying over and over again for about 15 years playing all different types of games on different types of hardware and roughly speaking I would say an average of 20-50% performance hit on 3D rendered games but it is getting much MUCH better.
It does work but I didn't spend the, honestly, stupid amount of money on my home PC to have it perform worse than it can just based on the software I choose.
There's a billion reasons why this is the case so saying one specific thing or manufacturer is going to fix it but AMD pushing support is a wonderful thing. I can't wait until I can finally get rid of Windows completely.
Really what I would love is a gaming focused Linux distro that actually works.
I think SteamOS was supposed to be that distro, but at some point it just kind of... ran out of steam?
I really hope that SteamOS continues and sees wide adoption, but I also agree from my experience mining btc on Linux years ago that drivers need to improve, as does the hack factor. As a sysadmin then, I struggled for hours to get the AMD + OpenCL stuff working right. Not sure if it's better now, but no way would the mainstream accept that type of experience to play games.
Or are you wishing that you wouldn't have to have a separate gaming rig if only games ran well on Linux? Then you could ditch the laptop and you wouldn't need 2 computers at home?
There's a lot of talk about complexity and dead end edge cases, however, having now done it, I can honestly say it was significantly easier than I was expecting and absolutely stable and fast thus far. I can't speak to edge cases (conversely, I can vouch for the Asus z170-* motherboard line), but my impression was that there is less and less of them as motherboard BIOSs advance.
It seems to be an area where things are developing fast. You'll find a lot of out-of-date resources telling you things like, for example, most nvida cards will not work or require effort to get working. The reality now is that it just requires a single argument in qemu to bypass the nvidia issue.
In my opinion, it's a significantly better solution than dual booting and basically indistinguishable from normal Windows performance-wise for gaming.
Link you might want to check out: https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVM...
Not everyone can afford several high-end GPUs, so it'd be really nice to use it on host OS up until the moment you run gaming VM, and then switch host to lower/embedded GPU.
The idea of getting another high end card seems pretty absurd when you're putting windows in a VM specifically to deal with those situations. I recognize some people have special use cases, but they're just that, special use cases.
Really, overall, I don't consider it to be too bad of a trade off for what you get.
I recently saw someone get better benchmark (Futuremark) results with Win10 running in a VM on Linux than native Win10.
I haven't tried this personally yet, but I do intend to.
It was apparently a hassle in the past, but the bypasses are basically built in to the tools now. Nvidia is calling the blocking behavior a "bug", but the have no intention to act on it.
The first is that it's pure, unsubstantiated, guesswork. You'll spend countless hours changing obscure undocumented parameters hoping that things will work. I tried, and it's not a fun thing to do, because you don't learn anything substantial.
Second, this type of operations have a sky-high level of brag factor. People will tell on their blogs/posts that they succeeded in "making XXX work and that it's stable", but they don't tell you that their computer explodes (so to speak) two minutes after they start XXX. Again, I know because I've worked on similar things, and the patterns are the same.
You may be lucky, but if you aren't, it's a lot of time wasted (it always looks like the "final solution" is behind the corner!).
I went for it, and it actually ended being significantly easier and better performing than I expected. I did have to take a few days and learn a bit about qemu, but I'd expect that much.
I will say that older motherboard (perhaps some new ones too) might not have firmware that fully support what's being done here. It's hard to say which, but you can see what people have had success with if you search around (Asus z170a works for me).
This is a little light on details but is a good resource for the steps involved: https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVM...