Hyperthreading & SMT causing low performance in Lightroom Classic

Summary of issue

Recently, we have noticed and investigated an issue where exporting and generating smart previews in Adobe Lightroom Classic 2019 is significantly slower when Intel Hyperthreading (HT) or AMD Simultaneous Multithreading (SMT) is enabled with certain processors. The issue is present in the latest build of Lightroom Classic (8.4.1), but we have confirmed it in versions as old as 7.5.

The level of performance gain that can be seen by disabling HT/SMT varies based on the specific CPU model and type of images being processed, but in some cases we recorded a 90% performance increase with HT/SMT disabled. At the moment, we have confirmed the issue with the following processors:

Heavily affected (up to 50%+ performance gain with HT/SMT disabled)

  • Intel Core i9 9980XE
  • Intel Core i9 9900K
  • AMD Threadripper 2990WX
  • AMD Threadripper 2970WX

Moderately affected (up to 25-50% performance gain with HT/SMT disabled)

  • Intel Core i9 9960X
  • Intel Core i9 9940X
  • AMD Threadripper 2950X

Lightly affected (less than 25% performance gain with HT/SMT disabled)

  • Intel Core i9 9920X
  • Intel Core i7 8700K
  • AMD Threadripper 2920X
  • AMD Ryzen 9 3900X

The issue has been confirmed with multiple brands of motherboard including Gigabyte, MSI, and Asus. At the moment, we do not have a permanent solution, but if you think you may be experiencing this issue there are a number of workarounds that may help.

Workaround #1: Disable HT/SMT in the BIOS

While disabling Hyperthreading or Simultaneous Multithreading in your motherboard's BIOS should resolve the issue, this may adversely affect other applications that benefit from HT/SMT. However, this is the most sure-fire way to get the full performance in Lightroom Classic if your systems is affected by this issue.

Note that every motherboard brand and model has this setting in slightly different locations. If you have a Puget Systems workstation, we highly recommend contacting our support department for assistance. Otherwise, the manual for your specific motherboard should have guidance on exactly where this setting is located.

BIOS - Disable Hyperthreading

Workaround #2: Set Lightroom Classic processor affinity

If you don't want to disable Hyperthreading or SMT on your entire system, you can tell Windows to only run Lightroom Classic on the "main" CPU threads through a setting called processor affinity. This is not quite as effective as simply disabling HT/SMT, but it will not affect any other applications.

There are many guides online for how to set processor affinity including this guide for doing it through Task Manager (note that this method needs to be done manually each time you run Lightroom) or this guide for creating a custom shortcut that launched Lightroom Classic with the appropriate affinity. If you follow either of these guides, you will want to set Lightroom.exe to use alternating cores starting with Core 0. I.e. Core 0, Core 2, Core 4, etc.

Alternatively, we put together a little utility that detects whether your CPU supports Hyperthreadring/SMT, and if it does, it launches Lightroom Classic (if it isn't already running) and properly configures the CPU affinity to mitigate this issue.

Download “Lightroom Classic Half Affinity” Utility

Be aware that this utility does not permanently change the processor affinity settings for Lightroom Classic. If you close Lightroom Classic and relaunch it through a normal shortcut or Creative Cloud, it will run with the affinity set to all cores.

Need help with your Puget Systems PC?

If something is wrong with your Puget Systems PC. We are readily accessible, and our support team comes from a wide range of technological backgrounds to better assist you!

Contact Puget Systems Support

Looking for more support guides?

If you are looking for a solution to a problem you are having with your PC, we also have a number of other support guides that may be able to assist you with other issues.

Puget Systems Online Help Guides