Building a system for VFIO, looking for advice regarding CPU performance

Hi

I’m very interested about the whole VFIO thing and running a virtual windows machine on a linux host for games and certain other programs. So I’ve been looking into upgrading my system with this in mind. However, I wanna make sure I will be getting similar performance before spending a bunch of money.

Currently I have an i5-6500 and while I did win the silicon lottery with it pretty damn good, it is only 4 cores/4 threads. I imagine that I would not be getting the best results.

So I’ve been looking at ryzen chips, 3600 or 3700x, and since I am on a pretty tight budget here I’ve been leaning more into the 3600, on an MSI B450-A PRO MAX board.

Does anyone have experience with the new lower end ryzen chips, such as the 3600? What kind of performance would I be looking at, compared to native Windows. Wendell has been making these VFIO videos using like very expensive hardware, and while it is cool to watch I feel like performance wise it’s not really relevant to most people with normal systems.

I have the graphics card sorted out (1660Ti for Windows and a 1650 for the Host) so I’m not concerned about those, unless someone comes in here and tells me that particular card won’t work for some reason.

Anyway, thanks

3600X with PBO has enough single thread to push past a stock 8700K single thread. Just keep in mind the weighting of how many cores to clockspeed increase is different between Intel and AMD. You will definitely want 3600 CL16 or lower latency for extremely good single thread performance.

For ryzen 3000 I would recommend getting an 8-core CPU then you can assign 4 cores to the VM and use per CCX OC to make them possibly 4.4GHz. Then you can assign 1 or 2 cores for io threads. For some games you could then also add an extra cpu or 2 as needed, and hopefully schedule in the VM to run the game’s main threads on the fastest CPUs. If you get the 6 core only 3 cores on the CCX can be overclocked as far. Of course you can go all-in and put all CPUs for the VM with a 6-core, but then you should consider future games. Probably a 6-core is a good pairing for that lower cost GPU, but if you were going to buy high end GPU I would recommend the 8-core instead. Note that auto-OC is pretty good for games on Ryzen 3000, but you will want manual OC for stuff like compiling as the all-core OC is still lower than it should be. Note I got good VFIO performance in games running chips like 2400G with RX480, so you shouldn’t stress out about the cpu too much.

The RAM recommendation is the important part. Right now if you shop around there are good prices on 32 GB kits. https://www.newegg.com/p/pl?N=100007611%20601349177%20601203950%20600528730%20600327642&Order=PRICE It is currently on backorder but you can snag the 2x16GB 3600 CL16 for under $150. This would allow you to assign a full 16 GB to a VM so that you can max out video games such as Middle Earth Shadow of War (although it takes serious HW to run that) Note that when assigning 16GB to a VM and trying to boot it up it will consume more than 16GB of RAM. Huge pages helps with pre-allocating but you will want to make sure that you have enough RAM. If you only purchased 16 GB of RAM you should able to boot a desktop on one gpu and passhthrough the other GPU to a VM assigned with 12 GB, but you don’t have a lot of headroom in that scenario. So consider how much RAM you need in the VM. If a game can allocate 12 GB system RAM the windows VM should have 16 GB total RAM since widows will eat GBs of RAM by itself.

One option that Ryzen is good at is you could buy a cheap APU first then upgrade CPU later. There is probably one more generation of AM4 cpus that will come out. So you can purchase Ryzen 4000 8-core CPU for Christmas. As I mentioned the 2400g or 3400g can be used to get a very cheap dual GPU setup going. (you can only pass in the discrete gpu, not the integrated GPU)
Also I would personally get an RX580, RX590, or the upcoming 5600xt gpu that should be announced on Monday. It will be easier to set those up in VFIO than Nvidia cards. Also they will be much much easier to use in Linux. I’m planning to purchase one of those models soon for PC builds for my young cousins’s for their first desktop PCs. Might setup VFIO for them also as a surprise gift.

Thanks for your replies! Very informative and I’ll refer to them in the future.

I was thinking about seeing what AMD shows at CES too, maybe hold off until the new chips come out, or even get current gen for cheaper. I also noticed that the 2700x seems like good value for money right now.

With regards to the RAM, I live in Europe so availability is a bit more difficult and prices tend to be steeper. I’ll keep an eye out though. I know Ryzen likes fast RAM.

As for AMD cards, I did try to set up VFIO with my old HD7950 just to see if I could do it but ended up being apparently unsuccsessful, as detailed here. It’s pretty ancient though so I wasn’t really surprised, I’m sure the current cards work just fine. It helped me get through the steps of setting everything up for the first time though, and I learned a lot.

1 Like