HyperThreading, AVX Offset, Worsening Thermal Throttling - Flight Sim performance

@SweViver This applies to you too.

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.

6 Likes

So its the best to disable hyperthreading and set the avx off set to 1,for all games?Or only dcs?

1 Like

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’.

4 Likes

i had the avx offset on 0,
and now on 1.Or is it better to set it at 0 again?

1 Like

Lower is better, preferably 0.

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).

3 Likes

okay then i put it back to 0,i use a i9900k overclocked at 5ghz

2 Likes

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.

3 Likes

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.

4 Likes

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’.

3 Likes

I found that disableling HT works well for the majority on games and applications actually for various reasons.

  1. Very little amount of stuff is optimized for HT
  2. OC with HT off pushes higher clock speed and is more stable
  3. HT adds slight audio latency and audio artifacts even on pro-software like cubase.
    Many devs. suggest to turn it off.
5 Likes

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.

2 Likes

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 :slight_smile:

8 Likes

I wonder, is HT is similarly an issue with a hard-realtime Linux OS (ie. Preempt-RT not RTAI)?

3 Likes

This might be of interest.

1 Like

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.

2 Likes

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.

This is a good Article on Red vs Blue and how there not really that far apart anymore

At least for me, it is easier to push higher clock speed and have more performance in games.
i7700k oc 5ghz.

2 Likes

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.

1 Like

Benchmarks suggest otherwise.