Installation & Licensing Center
INFO - Does Ansys support hyper-threading?
Authored by Caleb Scharf September 3rd, 2024 742 views 0 likes KB2797237
Description
Hyper-threading (HT) is a feature that is available, and comes enabled by default, on nearly all modern CPU's and computers. It can boost performance of specific applications by using one processor core to run more than one task at a time, but should you use HT with Ansys?
Does Ansys software support hyper-threading?
No. Ansys does not support or recommend using HT with any of their products. Below you will find the articles and documentation that support this. This support stance and recommendation goes back many years. In addition, Ansys support has confirmed this same information as of 9/1/2024.
Should I enable/disable hyper-threading when using Ansys?
According to Ansys, as you can read above, you should disable HT.
In the experience of our engineering team, in pre 2019 versions of the software it was more important and common practice to disable HT. However, in recent years, their experience says that you can leave hyper-threading enabled and not experience any noticeable performance impact. Many of our own machines run this way, however, we have not run comparison benchmarks on every CPU/system and CPU's are evolving, so this should only be one data point. Additionally, there is benchmarks to suggest (see the section below titled - “What is the performance impact of HT on Ansys performance?”) that Ansys can perform better with HT disabled. Lastly, we have experienced situations where we have seen Ansys run into errors which were resolved by disabling hyper-threading.
To error on the safe side, and ensure you get the best performance from Ansys, you should disable HT. If it's left enabled, Ansys should still work fine most of the time, but it's possible you may be leaving some performance on the table or may run into an odd issue, if you do.
How do I disable/enable hyper-threading?
Disabling hyper-threading can easily be done in your system BIOS/UEFI. It cannot be done in the operating system. You may need to contact your IT Department to help with this.
- Restart your computer.
- When the computer is posting (typically when you see the computer logo) and before it loads the OS, identify and press the key displayed on the screen to enter the BIOS. On Dells, this is F2 or F12 and it can be the DEL key on other systems.
- Once in the bios, look for the option to enable/disable hyper-threading.
- Save and exist the bios.
Will disabling hyper-threading negatively impact system performance?
In short, it is very unlikely for the average engineer to experience decreased performance if you disable HT.
In order for HT to improve performance, the application needs to be designed to take advantage of it. Most everyday applications are not designed to take advantage of this, and you will not notice any difference and in some cases, HT can actually be slower.
In an experiment carried out by bit-tech.net, a hyper-threaded Intel i7 Core was compared to a single thread Intel i7 Core after being put through a few different tests [3]. When it came to image editing, multitasking, and power consumption, the hyper-threaded counterpart did worse than the single thread. However, it performed the same or better when it came to Handbrake Video Encoding, the Overall Custom PC Benchmark Score, and playing the popular game Crysis.
Hyper-Threading and Everything You Need to Know (hp.com)
Anecdotally, when our engineering team has disabled HT, we have not been able to observe any noticeable negative impact on system performance.
Lastly, also consider that the average Ansys user is running a high-performance system with many more cores than the average PC, so it already has many more cores available to it, so the scenarios where HT may offer improvements are even further limited.
Why doesn't Ansys support hyper-threading?
Ansys is not designed to take advantage of HT which is likely because the technology does not likely offer any benefit for Ansys' use case.
Consider this, a single core can only physically do so much. If each core has 100 units of processing power and you have 2 tasks running on the same core, each task has to split that processing power. But don't forget, there is overhead required to split the use of this core. This can improve performance in applications where there are many small tasks that don't require the full power of a core, however, if this is not the case, HT can just introduce additional overhead, which is why some applications perform worse when HT is enabled. Ansys has designed it's application in a way that the tasks it runs take full advantage of the full power of each core.
What is the performance impact of HT on Ansys performance?
Considering it's not officially supported; it's safe to assume that performance should not decrease if you disable HT, and or is somewhat of a moot point. The research below indicates the same and even one published benchmark using Mechanical shows Ansys performance increasing when HT is disabled. Also see “Why doesn't Ansys support HT?” above for more relevant info on this topic.