Windows Games on Parallels Desktop 17: 2021 Update
It’s been one year since I asked if you can play Windows games on Parallels Desktop effectively. Parallels has also just released an update to their popular Parallels Desktop virtualisation app for the macOS. Now at version 17, it looks like a lot of the performance improvements are focused on the M1-based Macs, though they also claim up to 6x faster OpenGL graphics performance.
Installing Parallels Desktop 17 over an existing setup is as easy as always. Just run the installer and once completed, Parallels will then update Parallels Tools when you start your Windows virtual machine. A couple of reboots of the VM and you’re done!
Benchmarking Windows games on Parallels Desktop
My machine is a 2017 15″ MacBook Pro with a Quad-core Intel i7 processor and powered by an AMD RX 580 in an eGPU enclosure. If you’ve read my article last year, you would notice that I’ve actually downgraded from an RX 5700XT. Let’s just say it was more economically viable to just run an RX 580 and sell off the RX 5700XT earlier this year.
For the Parallels Desktop 17 settings, I just tuned it to be optimised for Gaming and kept it the rest of the CPU and Graphics as default presets.
Testing with Unigine Valley Benchmark
Firstly, I tested it the macOS version of the benchmark to get a baseline performance. Here’s the result with the AMD RX 580 eGPU powering the graphics.
The result on macOS was an average of 38 fps
Let now see how the Unigine Valley benchmark performs in a virtualised Windows running in Parallels Desktop 17.
On Windows, the Unigine Valley benchmark provides 3 different options for the rendering engine: DirectX 11, DirectX 9 and OpenGL. Here are the results of them all using the Extreme HD Preset (1080p at Ultra quality settings).
The results are quite interesting indeed. In fact, with DirectX 9, I get a much faster performance running in a virtualised Windows environment than natively on macOS in OpenGL mode! Here’s the table to compare the results side-by-side
|macOS – OpenGL||Windows – DX 11||Windows – DX 9||Windows – OpenGL|
|38.1 FPS||15.8 FPS||59.2 FPS||33.2 FPS|
|Comparison||– 59% slower||55% faster||12% slower|
This shows that while Parallels Desktop 17 can run DirectX 11, you probably would want to avoid it where you can. This also mean you may want to keep your Windows gaming on Parallels to just DirectX 9 games, or choose DirectX 9 mode wherever possible. Otherwise, the performance will be quite limited.
Another observation I also made was that the RX 580 GPU fan was spinning up a lot more when I ran Unigine Valley benchmark in DirectX 9 mode.
Here are two more tests on lower quality settings on Unigine Valley on DirectX 9 mode to see if the performance increases significantly or not.
|Windows – DX 9 – 1080p Ultra||Windows – DX 9 – 1080p Medium||Windows – DX 9 – 720p (Windowed) Ultra|
|59.2 FPS||69.0 FPS||65.4 FPS|
|Compared||17% faster||10% faster|
As you can see from the result, you can get higher performance if you lower the quality settings. However, 59FPS is a decent enough performance that you may just want to keep the eye candy settings on.
Testing with 3DMark 11
3DMark 11 is another DirectX 11 benchmark. Here’s a quick look at the results of the benchmark.
Not groundbreaking scores, but it runs. Again, because it uses DirectX 11, the performance seems limited by the underlying emulation translating DX11 to Metal.
Testing the performance with some Windows-only games
With a limited library of games, I tested some of Windows-only games that I have in my Epic and GOG game library.
Metro: Last Light Redux – DirectX 11 game
Metro: Last Light provides a standard benchmark utility which made testing the performance a lot easier. I did a round of tests in High, Medium and Low quality settings. Let’s take a look at the results.
As I’ve expected, the result is very inconsistent across the different settings when running any DirectX 11 games. The highest benchmark numbers comes from turning on all the settings to max with an average of 23.33 FPS. And the lowest settings gets you 23.00 FPS, hardly any improvement from the highest settings.
This proves that when it comes to DirectX 11, the emulation to Metal isn’t really as optimised as one can hope for.
Here’s a screen recording for you to see for yourself how the game performs.
Metro: Last Light Redux – Testing in DirectX 9 mode!
But thankfully, it seem that there is a way to get Metro: Last Light to render using DirectX 9. You can edit the game’s user.cfg file as noted here on this site and change the r_api to 0 instead of 2.
The result is quite interesting. The performance didn’t improve significantly until I set the game settings to Low. You can see the performance here on the screenshot of the benchmark results.
The game performs much better now with a more decent average 34 FPS. Here’s a screen recording of the Metro: Last Light benchmark running in DirectX 9 mode in low settings. It does not seem like I’m missing much eye candy visuals too.
Rebel Galaxy – DirectX 9 mode
With Rebel Galaxy, the game can load with the highest settings set. However, it just crashes when I start a new game. I had to turn down some of the quality settings to get it running for a bit, like turning down the shadow and effect quality to medium and FSAA to 2x.
The screen recording here shows that the game can perform very well. If only it doesn’t crash randomly.
The final game I tested on Parallels Desktop 17 is Rocket League. This is the free Epic Games Store version. Let’s see how it performs with this Parallels Desktop 17 setup.
As you can see from the screen recording, Rocket League runs really well at an average of 30+ FPS with all the settings set at the highest levels at 1080p resolution. As I’m recording directly using macOS’s built-in screen recording feature, the recording might not seem as smooth as my actual experience due to resource contentions. For me, it felt completely playable. If I tune down some of the graphics quality settings, I’m sure the experience will be a lot better.
It is however surprising to see a DirectX 11 game performing pretty well. I’m guessing that it doesn’t use the more GPU intensive features of DX11 as compared to the other tests I’ve done, or Rocket League being a much simpler game and does not have as many polygons as compared to Metro: Last Light.
Conclusion: You CAN indeed play Windows games on Parallels Desktop 17
Parallels Desktop 17 performs really well here. Albeit, it’s best you just keep to a DirectX 9 game. If you can, the performance of the game running in a virtualised environment is very impressive. But of course, this is on a set up that has an AMD RX 580 graphics card running on an eGPU enclosure. But it proves the point that on DirectX 9, the game can perform better than its OpenGL equivalent in macOS as shown in the Unigine Valley benchmark.
I’ll be asking the Parallels team to comment on the DirectX 11 vs DirectX 9 performance and will see what they come back with. But in the meantime, I can see myself playing some Windows-only games that I’ve accumulated over the years. 😄
If this post has been useful, support me by buying me a latte or two 🙂