To Thread or Not to Thread? Hyper Threading and SOLIDWORKS Performance

Article by Krystal Petersen on Apr 03, 2020

Hyper Threading is a technology developed by Intel® that enables a computer’s CPU to execute multiple streams of instructions at the same time. Hyper threading can significantly improve performance for some tasks, but it can also be detrimental to others. It is less common that hyper threading is either problematic or required as most modern programs are being written or developed with multi-stream or multi-core processors in mind.

In SOLIDWORKS desktop software, the following operations are known to be parallel and can take advantage of CPU multi-threading:

  • Opening SOLIDWORKS parts, drawing and assembly
  • PhotoWorks, Visualize, and PhotoView360 rendering
  • Simulation study calculations
  • SOLIDWORKS Compare and DrawCompare
  • Updateing drawing views.

A large amount of SOLIDWORKS operations are sequential and single-threaded; therefore, hyper threading does not make much of a difference. In some cases, single-threaded operations can be degraded due to slower frequencies and additional pipeline stages that are necessary to accommodate thread-switching hardware. Therefore, SOLIDWORKS will not see much performance improvement when using hyper threading. The system’s hardware and operating system have greater impact on SOLIDWORKS performance than multi-threading. The best solution is to have a large amount of RAM as well as a more powerful CPU and GPU which can handle the high demands. Here are some examples for high demand users:

  1.  For modeling and drawing details: There is no need to spend a lot of money on multiple cores. They will have better efficiency with a fast hard drive (RAID 0), fast available memory (16GB), and a 64-bit OS.
  2.  For analyses and photo-rendering: With more cores, you will see better performance, but the base recommendations are pretty satisfactory.

For most users who infrequently run Simulation analyses or photo-rendering, it is beneficial to disable hyper threading in order to improve SOLIDWORKS’ performance. Follow the steps below to disable/enable hyper threading:

  1. Save all your work and reboot the computer. Failure to do so could result in lost information.
  2. While in the process of rebooting, before the Windows screen appears make sure to press the key that will get you into the BIOS menu. (This can either be ESC, F1, F2, F8, F10 or Delete key, depending on your computer’s manufacturer. For example, to enter a Dell’s BIOS, spam F2.)
  3. Locate the hyper threading control panel once the BIOS is open, which is typically under a sub-menu of one of the following: CPU, Processor, Performance, Advanced BIOS, CPU Feature, Tweaker etc.
  4.  The desired setting will be either CPU Hyper-Threading, Hyper-Threading Function, Hyper-Threading Technology, or Intel® Hyper-Threading Technology. It should be set to ‘Enabled’ by default.

Once hyper threading is enabled or disabled depending on your needs, press escape a few times to get to the exit screen and then type ‘Yes’ or ‘Y’ to exit and save changes. Screenshots of hyper threading settings in an HP BIOS and a Dell BIOS are shown below.

hyper threading option 1

Figure 1 (HP Hyper Threading in BIOS)

Hyper threading option 2

Figure 2 (Dell Hyper Threading in BIOS)

I hope you found this SOLIDWORKS tutorial helpful. For more tips, tricks, and news about SOLIDWORKS – subscribe!

 

About Krystal Petersen

Krystal Petersen is a SOLIDWORKS Technical Support Engineer based out of Auburn Hills, Michigan. Krystal studied Product Engineering at Oakland Community College and has earned her CSWA and CSWP Certifications. She joined the VAR channel in 2015 with DASI (now GoEngineer). Krystal is a huge fan of Star Wars and likes to spend her off time fishing and camping.

View all posts by Krystal Petersen