Table of Contents
Introduction
Over the last couple of years, several new vulnerabilities have been found in modern microprocessor architectures. Many of these have been related to speculative execution techniques used across most of Intel's product line, and a patch was released for Windows 10 last week which was intended to address some of those weaknesses. Unfortunately, it has also reduced performance in some applications – which this article will demonstrate by comparing processing speed in three photogrammetry programs before and after the update.
For the record, this performance degradation was not something I was intentionally looking for. I only noticed it because the patch happened to be released in the middle of other testing I was doing on these applications, and when I compared two sets of results I was surprised to see a substantial increase in how long the Metashape benchmark I built took. Digging into what had changed, I discovered that a "Cumulative Update for Windows 10", described in KB4494441, had been installed between benchmark runs.
System Details
The system I first discovered this on used an Intel Core i9 9900K processor, installed on a Gigabyte Z370 AORUS Gaming 5 motherboard with 64GB of DDR4 2666MHz memory and an NVIDIA GeForce RTX 2080 Ti Founders Edition graphics card.
I had two other systems running the same sets of tests, one with an Intel Core i9 9940X and the other an AMD Threadripper 2990WX. Neither of those had any statistically significant impact from the same security patch, though. AMD's processors have often escaped when Intel chips have been found to contain flaws, and from what I've read Intel's latest 9th Gen Core X chips (which the 9940X is part of) were not vulnerable to the latest exploits… so it makes sense that these platforms were unaffected. Because of that, however, my data is limited to just a single processor – but I suspect that all Intel chips affected by the recent discovery would exhibit similar performance loss in these applications. Other programs may or may not be impacted in the same way.
Unfortunately, I also cannot go back and duplicate the original results or try a different CPU in the same system. The update in question did not have any option to roll back, and the only Windows Restore Point on the system was one made automatically… after the update had been applied. At this point I have other testing that needs to be completed for future articles, so I am not in a position to go back and spend a lot of time trying to get to a pre-patch condition in order to dig further. I am simply publishing the information I do have as a PSA.
Results Overview
I think the easiest way to show the overall impact of this performance loss is a graph showing the added time taken to fully process each image set in our benchmark, on each of the three photogrammetry applications we currently test. The original performance of the system is shown in blue and is always 100% – with the performance after the patch shown in red. A result of 110%, for example, would mean that it now takes 10% longer to process that image set than it did before the security update. I am not going into detail about the image sets used in these tests, as that information will be available in the performance articles I am working on for each of these programs.
Detailed Results Tables
For those who want even more detail, I put together charts of the average processing times (in seconds) before and after the security patch, including each step in these benchmarks (rather than just the total times, which were used for the summary graphs above):
Conclusion
A single patch, to address a couple of CPU vulnerabilities, caused Intel's Core i9 9900K processor to take 2 to 11% longer to process image sets in these photogrammetry applications. This is not the first update that has addressed such weaknesses in modern CPUs, so I wouldn't be surprised if the overall impact from those cumulative patches is even bigger. Some applications might be affected even more heavily, while others could see little or no difference – and of course, different CPUs may be affected more or less with each discovered vulnerability and subsequent patch. I look forward to seeing if this performance drop on the 9900K (and related models) impacts what CPUs are the best for photogrammetry moving forward, and we will have articles covering that topic in the coming days.
Looking for a
Photogrammetry Workstation?
Puget Systems offers a range workstations tailored for Pix4D, Metashape, and RealityCapture. Even in the most demanding situations, our workstations and designed to minimize downtime and allow you to work as efficiently as possible.