Impact of Spectre and Meltdown Protection on Virtual Machine Performance

A year ago I wrote about the 2D graphics performance impact of the Windows 10 (1803) update inside a virtual machine. As it turned out, the performance impact was related to the Spectre vulnerability patch that Microsoft had introduced. However, the same patch had practically no performance impact on a Windows 10 bare-metal installation.

Time has passed and I wanted to see if there has been any progress. Right now I’m running Windows 10 (1903) with Nvidia driver release 431.36. Windows 10 is up-to-date, Nvidia however already offers a newer version (431.60).

Benchmarking 2D and 3D Performance

I ran Passmark PerformanceTest 9.0 for 3D and 2D benchmarks. Here are the results:

 2017- 7-14 Passmark resultsSpectre & Meltdown protection enabledSpectre protection disabledSpectre & Meltdown protection disabled
3D Graphics Mark9481759675887596
DirectX 9167.999.499.399.5
DirectX 10143.9126.8126.7126.6
DirectX 11191.3178.7178.4178.4
DirectX 1240.241.14141
GPU Compute3018379538283862
     
2D Graphics Mark669584662632
Simple Vectors23.221.62221.9
Complex Vectors99.973.795.986.7
Fonts and Text227.1204.5218.9215.6
Windows Interface77.96177.270.8
Image Filters782819821811
Image Rendering795876894868
Direct 2D42.241.741.542.4

2017- 7-14 Passmark results: A benchmark I did in July 2017. I can’t remember the Windows 10 release nor the Nvidia driver used back then.

All other columns: Windows 10 (1903) with Nvidia driver release 431.36 and Spectre and/or Meltdown patch either enabled or not.

Results

Side note: 3D graphics performance of the GTX 970 – over the years – is deteriorating.  Most notably the DirectX 9 performance which has dropped a whopping 40%. But not all is bad – DirectX 12 performance has actually improved a tiny bit. Bear in mind that the Geforce GTX 970 tested is a dinosaur, ready for retirement. My best guess is that the driver developers focus on the latest generation GPUs.

Back to the subject – the influence of Spectre and Meltdown patches on 2D and 3D performance. As with the previous test a year ago, the 3D benchmarks are consistent and don’t display performance degradation.

2D benchmarks, however, were a bit mixed. The best performance was obtained with only the Spectre patch disabled. But the penalty of having both Spectre and Meltdown vulnerability protection enabled is minor.

“Image Filters” and “Image Rendering” are probably the two benchmarks most relevant for work with Lightroom and Photoshop. Both show insignificant performance loss with all protections enabled. This wasn’t the case a year ago when “Image rendering” scored 225.3 versus today’s 876 result.

Conclusion

The 2D performance drop after last years Windows 10 (1803) upgrade is gone. Recent versions of Windows 10 and Nvidia drivers, perhaps together with kvm improvements?, have practically solved the issue.

I am running now Windows 10 (1903) with all protections enabled.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.