I am plotting a new machine and swapping my current workstation into a home NAS Box. This question is just some due diligence to make sure the new hardware plays nice with current linux distros. I have an included PC parts list but I have a couple of questions some of you may be able to answer for me with regards to setting this up with VFIO etc, before you critique the actual parts list.
My base choice is a Ryzen 5 3600 and 32 GB DDR4-3200 (2x16) which I do not plan to overclock. First the specific parts list: https://pcpartpicker.com/list/GsVQtp
First real effective question is over the video card. To start I will only be doing 1080p likely on an older but decent TV as the primary screen with a couple of 22" IPS secondary screens to balance it out. As for games the most taxing I can think of will be the upcoming Baldur’s Gate 3 which is based on the Divinity Original Sin 2 engine, Civ V/VI are thrown in for good measure and there are some other titles I have bought in like Witcher 3: Wild Hunt during the last Steam sale, GTA 5, Hitman and the other odd Epic freebies that attracted me. I also play a very old MMO (Dungeons & Dragons Online) but that can run on a can of soup more or less so its not really a concern. While part of my instinct has been to go green from the simplicity of it just working with the right support I know that in the current bang for the buck world team red has come a long long way. My reading of the RX 5700 XT make it a nice middle of the road card that can more than keep up with the target I am setting and should be reasonable hopefully past Navi 20 for at least a generation or three. Alternately I am looking at some NVidia GTX 1660 Super cards but I could be convinced perhaps to go a bit higher if need be. I am NOT going for a card over $500 generally and while I would love say a GTX 1080 Ti even used on ebay they seem to be running over $500 when to me I would have a hard time grabbing one over $350ish given how hard those things have been run usually.
Second as far as Hardware goes is that ASRock B550 workable as far as the IOMMU groups go for use with VFIO? I don’t know right now if that is something I will need but I want to keep it in mind. My target for the Host GPU if I go VFIO will be a 2GB NVIDIA GeForce GTX 750 Ti (EVGA) I run in my current workstation and the RX 5700 XT for the Guest use. Having one Red and one Green should make the VFIO thing a little easier to configure from my reading but I am not sure I will need to use VFIO to run what I am planninng.
Third is a distro question. It is also one I am way on the fence over since most of my linux time has been in server mode which for me has mostly been using debian based machines, a smattering of ubuntu flavors and every few years a version or two of Fedora. I am relatively comfortable on any of them and for the last year have been distro hopping on my subpar Thinkpad SL550. I’ve done a month or so with Pop_OS, Elementary, Manjaro, Solis, Mint and currently I am messing with MX Linux just because I was curious to see how their retaining the SysV Init thing was working with modern stuff but I digress. My question is this, for those of you with VFIO experience do you have a “better” case distro in mind for running that sort of setup or is it just a case of I admin Fedora machines without thinking or I do debian without a pause sort of situation? Can safely say I am not going for a rolling release distro mainly because I don’t want to deal with breakage. So what solutions would work well in the above cases?
I am not after the holy war of which distro is better than the other but I am looking at this from an ease of user use case perspective. Sometimes things run simpler with a specific set of tools with solution A over B and that is more of the case I am after guidance here for.
Thanks for the responses and I look forward to an interesting discussion.
A 5700 XT is plenty for 1080p60fps, and should be fine for new games for at least a couple of years. Well, it should be fine, unless the new consoles make new games much harder to run, but who knows.
x570 based boards generally have better IOMMU groups. B550 AFAIK can generally separate out the two physical x16 slots into their own groups, but everything else is in one or two groups which is not ideal.
Not the same board, but it should be similar because of also being B550
Don’t forget that AMD cards have the reset bug. There is a patch, but only partially works, and still has issues.
Not experienced with motherboards and the whole IOMMU thing, but I have read here a few times than B550 boards are a no-no for that. X570 seems to be the general recommendation and I would get that regardless due to better expandability options. 4000 series CPUs are coming, so some may say now is not a good time to buy if you like planning ahead.
The GPU seems overkill for what you plan. Resolution and the games you plan on running can do well with a 5600XT level card, unless you are going for +60fps gaming. However if you can afford it and want to make sure you can run games with all the bells and whistles then the 5700XT is adequate, but at that resolution and with that card you may end up with a CPU bottleneck (not a big deal if you don’t care about getting the last drop of performance from your machine always in every situation).
RAM is fine, since performance benefits in CPU constrained scenarios (like I mentioned above) start to level out once you go past 3200MHz on the RAM. Wouldn’t hurt to gun for 3600MHz RAM or even 3800MHz, but it’s no big deal unless again you are anal about game fps and benchmarks.
CPU is also fine, but I personally would go for an 8 core given your plans. A 3700X is basically that same CPU plus the extra pair of cores. 6 core CPUs are more than fine for gaming plus basic productivity machines, but once you add virtualization and the like you will really want the extra cores.
As for distros, any popular up-to-date distro should work. Pick one you are comfortable with. Given the card you plan on using, I would chose one that lets you easily run the latest mesa and kernels, like a rolling release distro or Ubuntu with the appropriate PPAs.
Ok thanks for the Reset bug info I hadn’t really registered that in my thinking so out with team red for now and frankly I am ok with that.
A lot of the reason my target is 1080p60fps is that’s what my current screens support and I just won’t have the budget to upgrade for awhile. As it is I am trying to pinch a penny or three given how the silliness of isolation and such has forced on us all.
For the x570 pro, you will want to read through this.
For the 1660 ti, the limiting factor is probably vram over how fast it is otherwise. For example, Titanfall 2, from 2016, will eat 6gb vram on very high textures, and 8gb on ultra textures.
On reflection going the Ryzen 7 3800X for the extra two cores seems an excellent idea so I have done so and with the AMD Reset bug team Red is out and I am swapping over to a GTX 1660 Ti. Given the limitations of what resolutions I want to run that should suit me quite well and have a bit of headroom if I can do a set of screen upgrades in a year or two.
Since dropping team red I will be fine with either a Debian based distro or perhaps Fedora 32/33. I am distro hopping the laptop this week to Fedora 32 to run that on hardware for a bit to see how I enjoy the look and feel of it since in all honestly I don’t think I have touched a Fedora system since version 10ish or so.
At any rate I think I will skip any of the rolling release stuff since my main machine needs to be kept as stable as it goes. I can tolerate a rolling distro on the laptop since that really doesn’t matter too much but that main machine needs dependability.
Thanks for the CPU suggestion I really didn’t have that too much on my radar. Both you and TheCakeIsNaOH have given me plenty to think on and I do appreciate it.
The parts juggling reminds me of the old days when Linux HW detection really stunk in the 1.4ish Kernal days and spending time on BBS’s making sure the parts I was ordering would actually boot.
Thankfully I am fairly sure this bit of patience is going to pay off in the long run.
Well from my understanding for a bang for the buck perspective I go for either a 1660 Super, 1660 TI or a 2060 Super more or less. My target for the card is sub $400. My preferences are biased a bit towards MSI and eVGA branded cards as I have had generally good service out of them over the years but I m open to most mainstream offerings.
For picking a model, you might look at which if any have a virtuallink USB C port, because it is passed through to the VM with the other card devices. I am not sure if it is available on midrange cards.
Also, as you are buying parts, there are two things that I would reccomend if you do not already have them.
The first is a second keyboard/mouse combo. This is for setup and troubleshooting, as it is sometimes much nicer to be able to pass through one keyboard/mouse completely and leave the other for the host during setup. So it does not have to be nice, and can be cheap. You can get a new combo for maybe $15 USD, or maybe you could fine something even cheaper used, say at a secondhand store or craigslist.
The other thing I would suggest is a EDID emulator, otherwise known as a dummy plug. It does not really matter if it is HDMI or Displayport. This is for looking glass, and so you do not have to have the passed through video card plugged into a monitor.
I checked Newegg and only found 2 cards with it and they started in the $800 range so no USB C Virtuallink ports for me.
Hmmm Good call as I don’t think I still own an EDID if I ever did. I think I had a couple of HDMI ones years ago but they are lost to a very old office I no longer am around. Just to comfirm something my setup plan in my head is to have the two video cards in the new box (A) GTX 1660 Super and (B) GTX 750 Ti. Physically my main and two secondary screens are going to connect to card (A) and (B) will use an EDID. My idea setup will transfer over my main screen, keyboard and mouse to the Guest OS and the Host will drop to using Card (B) and a secondary keyboard and mouse as needed.
I tend to buy mine 2 to 4 at a time since they break at the most annoying times. I admit my current KB is the last of it’s current batch so I will find another set I will be comfortable with given what I truly want in a KB doesn’t exist.
While the reset bug is a thing, a 5700 XT should be rock solid under Linux/Host, and that GTX 750 Ti would still work pretty well if you want to play around with Looking Glass for games - if you decide to commit you can always invest in a bigger card later. You could also consider an RX 580 which is pretty good value and handles 1080@60Hz at High, or even better.
Also something to consider would be the Ryzen 4600G (or whatever is revealed with the rest of the Ryzen lineup in a few months), which is a 6c12t CPU plus an APU. This would be perfect for host. Then you could do a 3060 as a decent guest GPU - which is pretty much where the 5700 XT is.
As for B550 IOMMU groups, you will be very limited with it. B550 still could work, it depends on what you want to do with it. X570 is the better chipset if you want to be sure though.
And finally, regarding distro I would be rocking either Manjaro or plain old Ubuntu LTS. It depends on how much you care about access to newer packages and software; Manjaro is better for newer packages, while Ubuntu LTS is better for stability and support. Pick your poison.
Well the trouble is right now the folks over in /r/VFIO which had a list dividing the team red cards into the two types of reset bugs seem to have withdrawn their list of them entirely for the moment and since price/performance on the RX 5700 XT really isn’t that different from a GTX 1660/Super/Ti. At this point as much as part of me really dislikes NVidia for how they handle their linux drivers. For now they really do just work.
I double a 3060 is anywhere in my near future since I really doubt I will go over $400 for a video card anytime soon for just 1080p Stuff though this whole hardware rabbit hole has gotten me has been looking at the Monoprice monitors that appeal to my frugal nature but given this is upgrade season I may retire my 42" tv on the main screen at least to a reasonable 32/27" IPS Panel.
I am going to spend some time on metal (my el cheapo salvage laptop) with the current Fedora and see how I like the current version. I’ve run Manjaro before and while there is nothing wrong with it, especially when you add in the AUR. However the frequent short term “breakage” can be somewhat frustrating for me. I am reserving judgement at the moment.
I will say though it seems that a lot of the VFIO passthrough isn’t going to really happen for now since the AGEAS bug in UEFI kills all VT in linux right now with anything Ryzen. I am too bloody cheap to go Threadripper so I may check some Intel build sets but that will cut down on just how much of a machine I can build right ow. That whole AGEAS thing has been an active bug for over a year and still seems unfixed so I may end up just resorting to running what I want natively in Linux or using that combo of Proton/DXVK/etc.
I am probably about two weeks out from pulling the trigger and spending some money so I will keep an eye out for other options and I will say this has been a fascinating dive down the rabbit hole.
At the moment, that is what I do. Rocking a 3400G, was thinking “I’ll get a graphics card for passthrough later, right now I need the money elsewhere” and bought bare-bones on Black Friday.
I haven’t felt the need to upgrade to a better GPU or CPU yet, but the system is only 8 months old at the moment. I will most probably opt to go with the 4700G whenever it is released.
You will be having trouble with Multiplayer (E-sports especially) on anything that isn’t native due to Anti Cheat software, for me though MP isn’t that tempting anymore. If I play I play with friends in a co-op game, don’t want to deal with the toxic 14-year old 1337 crowd that likes to roflstomp n00bs like me at every opportunity. I’ll stick to couch coop like Overcooked, seems like a better use of my time.
Right now the next game on my list is Baldur’s Gate 3 which I will likely do with one or two of my friends and its not an esport sort of game. The last time I did much of that was with either Rainbow Six 3: Raven Shield or Quake Wars: Enemy Territory while they both still did MP. I never bothered with the single player Ravenshield but the multiplayer for its day was amazing and I enjoyed the heck out of it. Heck that is probably one of the few videogames I ever bought on launch day for full retail price. no less.
A few years ago I bought Batt;efield: Bad Company 2 and found it really unplayable from a community standpoint. I occasionally try a few other FPS games but they really fail to draw me in between the various wallhacks and 14 year olds screaming over voice chat I can’t waste my time on.
So I got to 4x Strategy titles, Wargames, RPGs and the odd Puzzler as well as a few retro titles. I too am content with those couch choices.
I am a bit skeptical to all X570 motherboards below $200, I would rather recommend the similarly priced B550 Aorus Pro AC for $169 in that case. For an extra $15 you get (optional) WiFi, bluetooth, USB C and 2.5G Ethernet, as well as a much better VRMs -> better CPU temps. Only two things you really lose are 2 internal USB3 ports and the ability of doing SLI - both not really a concern anymore.
For the Looking Glass Virtual Windows Gaming PC option a B550 should be sufficient, but you might need to wiggle things around a little and plan what goes where. It’s not ideal, but it’s doable.
No argument from me there, but at the same time Ubuntu LTS can get really stale - especially the last 6 months when LTS+3 comes along with all the new cool features.
At the same time, I prefer stale over new stuff breaking shit, and that is precisely the reason I run stock Ubuntu LTS. I also respect that other people have different needs from mine though.
I always run the latest 6-month Ubuntu for that reason. It seems to me the best compromise between being up to date and being stable. In fact, until this last LTS release I’ve been running Ubuntu devel on my day to day system. It was perfectly stable, but unfortunately few PPAs support dev releases, so I’m going back to running the latest stable instead.
The Masochist in me is pondering and with all the bugs and such perhaps an upgrade to the basic Threadripper will suit and since I am also pondering getting rid of my TV I may as well toss in a cheap but interesting 34" single screen to run it.
Do I have to game on Linux? No I don’t have to but I just want too. For that I can use most any of the modern systems though I will likely end up on Pop, Fedora or the real long shot… OpenSUSE. I admit part of me ponders a couple other debian varients, specifically MX Linux because deep down I have never had problem with SysV Init scripts and find parts of systemd something of a kludge I am not entirely convinced is a good thiing but rather than start what is still something of a religious war over the subject I am suspending judgement. In the last 10 years I have been dealing with Linux multiple times a week, on servers. I have had to run a few programs that would not virtualize and thankfully the one that was the worse is now out of my life.
There are still few things the whole passthrough thing looks useful to me other than games. Namely Fusion 360 since I am pondering diving more into the whole 3d printing/laser cutting world to support some of my hobbies and while there are alternatives. Fusion is very attractive for design and more importantly CAM work so I don’t have to manually program all those curves.