Hyperthreading/logical cores on a PC - Good or bad for modern Cubase?

As I understand it, some time (years?) ago the advice when using Cubase, was to disable hyperthreading (logical cores) in BIOS and use only proper hard cores.

Has this advice now changed for a modern PC/Cubase 9.5Pro setup? Are logical cores now considered to be a beneficial thing for Cubase, given the provisos of the article linked below and the 14 core limit to avoid problems?

This article by implication, seems to suggest that we can now go ahead and use up to 14 logical cores with Cubase.

Has anyone done any tests to see how much benefit or issues there are using logical cores?

I’m about to upgrade my PC from an ageing Q9650 4 core (no hyperthreading) to an i7 8700K with 12 cores, so this is of direct interest to me at this time.

In my experience, disabling hyper threading can improve performance at very low latency levels e.g. a buffer of 32 or 64. Any buffer size higher than that and it’s better with hyper threading enabled.

As far as I know, the official advice is now to have hyper threading enabled (and that is what I do).

Enable hyperthreading unless you’re on windows 10 and doing so takes you above 14 cores running you into the MMCSS thread limit problem - it’s all explained here: https://www.steinberg.net/forums/viewtopic.php?f=250&t=117319

Thanks. Enabled it is then.

Cheers

I’ve seen that thread. However, I have a 24 core CPU (12 physical cores) and I find that performance is better on Win10 at any buffer above 64 with hyperthreading enabled.

Interesting. Out of curiosity yesterday I disabled Hyperthreading on my 6 core /12 thread 3960x. I loaded back the project I was mixing and saw a very slight improvement in cpu use, it was very slight but I expected to see a performance HIT not stay the same or better.

I’ve left it off at the moment and it’s running very nicely.

I would never have thought to do this, but it goes to show sometimes certain OS/cpu/MOBO/Ram combinations work better with HT off.

My suggestion would be to try it on and off on your particular system and see what works for you.

MC

Thanks. Good idea.

I’ve seen slightly better performance with HT turned off (6 core i7 on Win10 Pro), buffer size is usually running at 32, 64, or 128 depending on the project size and amount of VSTi’s.

I have to keep it off for low ASIO volatility. Has never been beneficial in any way to my system. I do however do not use ASIO guard when tracking…might yield gains when used in conjunction with it.

8 to 10 % less cpu load without HT on my system. I use many vst instruments and effects and lowest latency and no asio guard.

I get about 10, 15% better average load (which is atrocious still overall, comparatively speaking) with HT off. But turning off ASIO guard makes the load spike, so I leave that on and on high. I’m new to Cubase and impressed with its features and flow but this poor performance was a let-down.

If anything, slightly heavier load here with HT disabled. This on a complex project with many plugs.

Hyperthreading off all the way for me. Much better performance with VST instruments at very low latencies.

Depends really.
In theory HT ON should always be the best option. ( mmcss Limit not taken into account)
If you need to turn HT OFF, then something is wrong somewhere, could be a suboptimal
BIOS/UEFI setting that could require a BIOS update, if @ all available.
Wrong memory timing or over clocking can also give some strange performance issues.
With the wast amount of motherboards and revisions of really any hardware in a computer, it is best to test and use what ever gives you the best performance.

This is an interesting part of the discussion, MMCSS threads have higher priority - BUT - if your system performs like mustard and is never under any real stress then presumably ALL threads will get all the CPU cycles they require - in which case, regardless of the MMCSS thread issue, hyper-threading will still give you theoretically better performance. If your system is being pushed near the limit and you’re over the MMCSS thread limit, then non-MMCSS threads will start to suffer from stalling beyond acceptable latency limits - dropouts, pops and clicks will result. But, there’s nothing that says you can’t perform within the realms of acceptability in terms of dispatching latency - despite half your workload sitting on non-MMCSS threads. In other words, if you have a well-optimized relatively bug-free system. the type of threads that are in use could become a non-issue.

Yes that is correct, some high cpu core computers do not have a problem with non mmcss priority threads.
The few I have seen/heard reporting successfully doing that, have all been using Asus motherboards, if that is a coincidence I don’t know.
Wish I had taken notes on what exactly was used, but I was to busy at the time.

Is there a way to monitor/measure this?

I assume you are talkin’ solely regarding Cubase ?
Cause, for instance, Reaper DAW needs to handle hyperthreading “traffic” by itself, it wants and needs to be “in control” and NOT the operating system.
If hyperthreading is ON, it may give confilcts with Reaper, trying to be in control itself over distributing audio processes over all cores, including the virtual ones.
So, for Reaper DAW, it is strongly advised to turn hyperthreading OFF (in bios).
And for alot of Reaper users this has proven to be dramatic increase in performance.

So now i wonder: Does Cubase leave it’s “hyperthreading traffic” up to the operating system or does it want to be the conductor itself over that ?
If Steini ever made a statement about this (or make it in the future) i think this will enlighten people asking theirselves wehter to turn HT Off or On for best Cubase performance…

Just my 2 cents ofcourse ! :smiley:

That’s not how HT works, any and all programs can’t distinguish between a real cpu core or a HT one.
Reaper does handle plugins different than any other daw on the market. AFAIK in Reaper every plugin uses its own thread and not one thread for each track like Cubase, S1,PT etc.
Oh and a thread on the OS level is not the same as HyperThreading, completely different things.
Anyhow the conclusion is really that you have to test for yourself, there are way to many combinations of circumstances that makes it impossible to answer if HT Should be ON or OFF
Depends.

Wow, I never even considered turning HT off, until I read this. Normally I get CPU spikes throughout the day, but with HT off I’ve had a full day without any spikes on a heavy project.