Disabling HyperThreading, for DCS World, is showing a ~10% reduction in CPU frame latency, according to FPSVR. Indeed, double framing seems much less likely to occur, even as the CPU is loaded with other background tasks.
Changing AVX Offset from 2 to 1 (my Silicon Lottery i9-9900k can reach 5.2GHz with unconditional stability) also improves performance, by about 2%, but only if your CPU can handle it stably. Unlike GPU ‘overclocking’, some effort, expertise, and risk may be required to raise voltage and line load calibration as necessary, so proceed carefully. DISCLAIMER: Do not blame me.
Watch for thermal throttling, even if this has not been an issue before. DCS CPU single-core utilization is pushing much closer to 100%. Combined with summer weather (in the Northern Hemisphere), low-quality coolers (including some AIO liquid coolers) may cause severe performance degradation. Preemptively, I will soon be testing a new Noctua D15S.
Keep in mind few flight sim use cases briefly demand the best possible CPU performance. Use FPSVR to check if CPU frame latency graph is at least occasionally 3/4 full.
I decided to carefully quantify these issues and post this when I noticed DCS World was pushing my CPU temperature to 86degC, about 10degC higher than usual, with both CPU and GPU utilization closely approaching 100%. Hopefully, I am providing some new information or at least context rather than just stating the obvious.
Hyper-Threading off, only for the very few applications which remain as single threaded as DCS World. X-Plane 11 is probably similar.
That said, only such single-threaded apps should be so CPU constrained anyway, so leaving Hyper-Threading off for most other games should be fine.
Reducing AVX Offset is generally a good idea for any application. It is only a matter of whether your CPU can handle it - this is overclocking, and not quite the factory kind like GPU ‘overclocking’.
AVX offset is how much the processor frequency will be reduced when AVX instructions are detected (which DCS World uses). So if you have a nice 5GHz CPU, but the AVX offset is 1, you only get 4.9GHz when running DCS World.
Just don’t let your motherboard set it for you if possible (it will likely chose something other than 0).
Also keep in mind that if your CPU is not overclocked at all, the stock ‘Turbo’ mode settings may not sustain their max speed rating (ie. you CPU may stay closer to 3.6GHz rather than 5GHz).
With some careful evaluation, you might find most games will not cause thermal throttling even if you push that to 5.1GHz. Might be worth having a second BIOS profile for ‘fast single-thread’ mode.
Hi. I tried HT on and off with two missions. First was PG free flight, and the other a custom PG mission with a couple hundred ground units, just to see.
In PG FF, I got 9.5% reduction in CPU frame time. In the custom mission, it was 16%! HTResults|288x500
So all up a very interesting result. Thanks for letting us know about this.
7700K@5Ghz, avx offset 3.
Wow, awesome to get confirmation on a different setup, thank you for sharing!
Another thing that helps a lot with really complex missions is to always use a server. The DCS World dedicated server can be run in addition to the client (same machine, same credentials), and takes another 20% or more of CPU performance to another thread. As opposed to just running a mission ‘single-player’.
I can confirm OC seems to reach higher clock speeds and stability with HT off.
I was not aware of HT impacting audio latency or artifacts. Very interesting. I am beginning to suspect HT actually adds steps in the processor pipeline, which are actually bypassed when disabled.
Yes for years not only eg. Steinberg officials suggested to turn HT off.
With the recent Cubase 10 it’s the first time that they do not push that advice as dominantly as they used to.
When speaking with professional engineers from a variety of studios, they all suggest to turn it off.
Myself, owning a small Studio, but for preproduction purposes only, have experienced a lot less dropouts toggeling HT off.
I’m no Hardware expert, so I can’t say why this is the case, but I can confirm as a pro-user that there is a connection.
BTW. Our new album (Wishless - Heal) is out since last week and available at every common streaming service. I play Lead-Guitar and put in some nice solos, just in case you wanna give it a spin
Yes, I have been aware of the theoretical arguments against hyper-threading. But those are a long way from demonstrating better high-bandwidth video frame latency in an application like DCS World with many compositing threads in the CPU pipeline.
Usually, forcing the OS to see twice as many ‘cores’ - especially under MSW - has improved overall responsiveness. Some of my experiments on a Threadripper machine suggest this is partly due to reduced context switching.
Well this goes back to DOS days. Multitasking vs Multithreading. If I understand right. Hyperthreading uses a slicing method of sorts to share time on 1 real core simulating 2 cores.
In my experience from AMD FX to Ryzen 2700X, whatever the single-thread passmark scores suggest, AMD has to be assessed a 10% (really more like 20%) penalty for some applications, particularly DCS World. Much of what I have read suggests the Ryzen 3000 series has not resolved this.
I suspect this is because DCS World includes code not optimized for AMD (eg. compiled by Intel compilers). Unless userbase for existing flight sim apps overwhelmingly abandons Intel in favor of AMD (which would probably take years to happen at best), this will not change.
At the end of the day, this leaves me feeling like I have little choice but to buy the best pre-binned Intel/NVIDIA hardware for flight sim until these applications either support more cores/cards (multithreading/SLI), or until hardware manufacturers release products specifically optimized for these applications.