Cubase 10, Windows 10 and multi-core (14+ cores)

I am running two Windows 10 systems 6950x(10core) and 5960x(8core). I had hyperthreading turned off on both. I turned it back on for both and there was no issue as all. It basically cut the CPU idle % by 40-50%. I havent loaded up a large project to stress test it, but overall I think Cubase 10 feels snappier. So, I am happy with that. :slight_smile:

I did a few quick tests after reversing the registry fix.
I noticed right away that the ASIO Performance meter was acting pretty wild and hitting the red every few seconds with one instance of Avenger and just simple presets.
But there were actually no audible glitches, even if i hit the polyphony very hard.
May i add that i am using extremely low buffer settings of 48 samples wich has worked with the now obsolete workarounds that have been available for High Core count processors.
My theory is that the current ASIO Spikes are just cosmetic in nature and not a true performance issue.

Tonight i will record a session with some more tracks and plugins (no avenger this time)and will keep you updated if it works reliable.

In the past it was always the case when using HT you had to use a higher buffer to take advantage of the threads. Especially with ASIO Guard on i did noticed huge gains on my old 6 Core Gulftown Intel.

As of now i have ASIO GUard off as it gives me a truer representation of performance differences between CPU Modes. Also i must admit that even bigger Projects didn`t stutter even when limiting the core counts on C9.5.
So no need for ASIO Guard yet for me.

Is there any improvement in performance on computers with less cores? I have 10 cores for instance.

Cool :slight_smile:

Sorry for the silly question, but I can’t recall if I have ever applied the “registry fix”.
Where can I find the info regarding the key etc. so I can check if my registry edits need to be reversed?

Thanks.

Thanks for this multicore update. There’s for sure an improvement of multicore usage.

I’ve just updated from 6 core 12 threads i7-3960x CPU to 8 core 16 threads i9-9900k. Tried to open my project made in Cubase 9.5 with 6 core CPU and got worse perfomance with 8 core CPU with some spikes and crackles. After installing Cubase 10, all those problems with same project are gone + my ASIO perfomance meter droped by 1/4. To me it’s huge improvement. Big thanks for it Steinberg!

8-core CPU here (5960x). Didn’t benchmark yet, but feels like no change compared to 9.5 with the properties file. I’ll test properly and report.

By the way, my main concern for CPU isn’t fixed yet. That is, using full CPU when rendering.

By the way, thank you Fabio, for the mood you’re setting here. That is the spirit for a good forum. Finally!

14 cores. Definitely an improvement in performance here. GUI is snappier too.

Disabled all BIOS SpeedStep and all that stuff, except Intel Turbo Max Boost 3. Guess that’s only relevant to certain MOBOs.

I just checked and it looks like the update to build Win10 1809 wiped out the registry key for me. That might explain why Cubase 10 seems smoother/more responsive than 9.5 has recently. I wonder if Microsoft also changed MMCSS behavior in 1809 as it was much worse before? Fabio, any chance you can get into a little more technical detail about what Cubase 10 is doing differently with MMCSS now?

Maybe too off-topic, but it is somehow(?) related in regards to RME audio driver. It has a setting to enable MMCS and I have it enabled. Wondering now if this is still the best way to go together with Cubase 10?

anyone got a link were I can reset all my reg edits I did with Cubase 9.5…im using a i7-5820k 3.30ghz cpu and 32gb ram but not seen any of the processing boost im supposed to get .I deactivated hyperthreading because that’s what I was told to do when I was getting asio spikes in Cubase 9.5 in the last windows update (1803) and I don’t think ive reactivated it.

how can you tell if its on or not and what do you recommend I set my Cubase power settings too ?thanks

I’m testing a very busy project in Cubase 10.0.5 and I’m afraid I’m not seeing a difference here (5960x, 8 real cores). This particular project still causes a lot of real-time spikes if I try to play it after activating hyperthreading on BIOS.

With hyperthreading deactivated it works just fine, no real-time peaks, as you can see in the image below.

In both cases ASIO Guard is set to “Normal”, and my RME AIO is set to a latency of 128 samples. So, unfortunately, no improvement here after updating to Cubase 10.

Curious if you did any registry changes before – if so, you’ll need to reverse those as well. If not, I’ll be curious what Fabio might suggest. Please keep us posted. This is the time IMO for Steinberg to get this sorted out, otherwise we’ll be waiting around a couple of years. So please stay on this and push Steinberg to help get to the bottom of the issue. I appreciate when anyone keeps following up on things like this. So far it’s been better for me on a 10-core Xeon, but I haven’t loaded a project to the max yet. Yours looks like a pretty heavy load, so maybe the new optimizations don’t work as well under heavier load?

Hi uarte. No, I never did the registry changes, nor the audioengine.properties trick (which I didn’t even know it existed before reading this thread). It was clear for me since upgrading to Cubase 9 that, if I wanted to work with virtual instruments at low latencies without spikes, the only solution at the time was to disable hyperthreading, so I simply did that and moved on, until now. In fact, reading about these possible improvements in multi-core was the main reason for me to purchase the update to Cubase 10.

Of course, I’ll make my best to help Steinberg / Fabio if there’s something in particular I can test in my rig for them.

Thanks Jorge, I hope Fabio and Steinberg in general can sort this out. I think the general direction is positive with C10, but you should have seen an improvement. I need to test out some more heavy duty projects soon to see if higher CPU load makes a difference for me here. So far so good for me though on an average size project, the improvements with C10 have been noticeably good. But I haven’t had the time yet to really push it as hard as your project appears to do.

Out of curiosity, what plugins are you using in your session? If I have the same ones, I’ll try setting up a session that pushes the system more with those plugins.

Fabio, can you please clarify exactly what this change should or shouldn’t allow? Exactly how many computational threads are allowed now? Can a large scale CPU be expected to be used fully? eg. AMD Ryzen Threadripper 2990WX with 32 core and 64 thread? Or is this just a “fix” to throttle Cubase so it only uses a certain percent of the available threads and no dropouts occur?

If this is not a total fix and still won’t allow full use of large processors like that, is it expected there will ever be a “full fix”? The number of cores and threads available to us grows every year. Some of us are running synths or plugins that require a high CPU single thread, and thus we need these processes spread out among all our cores (with or without multithreading enabled).

Microsoft claims to have been working closely with you on this issue for over 10 months now:
https://answers.microsoft.com/en-us/windows/forum/windows_10-performance/windows-10-limits-max-number-32-of-threads-with/e3a47fc2-9547-4fea-b830-042a552f56a9

So I can only hope you have found a total solution between the two of your companies. Otherwise, I would like to know what you suggest people do long term in order to fully use these big processors. If this is expected to work with Cubase fully, I will order one of these processors and can post test results in a few weeks. But I need to be clear on what to actually expect. I don’t want to buy a $2000+ processor for $800 worth of performance.

If ASIOGUARD is enabled, then why do you have such a heavy load on “real-time peak”? Maybe some kind of plug-in does not support asioguard or is it disabled for some plugins?

With Asioguard should be like this (ASIO Guard is set to “Normal”, and my RME AIO is set to a latency of 128 samples)
asioguard.jpg

@jorge
Have you done the usual optimations in bios ?
Disabling any and all power saving and turbo boost, and clocking all cores the same. A 5960 I would clock at 3ghz on all cores to start somewhere and increase the clock if the temp allows it.
Setting memory timing to what the manufacturer recommends for the memory sticks, auto setting in bios sometimes get it wrong.
Also.
Updating any and all drivers, even non-audio related devices can have a disastrous influence if they cause interrupts.
LatencyMon is a good tool to find any problematic, programs and drivers.
Most of this can be Googled, if you need more information.

Anybody see any performance enhancement with a 3930K on 10?

I’ve been doing more tests during the weekend and I must say that, yes, according to the ASIO loads, there’s an improvement of about 5-10% between Cubase 9.5 and 10 in my system, which is indeed nice. However, as I said before, even with this gain in performance, I still can’t work reliably with hyperthreading activated due to the real-time glitches.

Well, nothing really esoteric I guess: 8-10 instances of Kontakt with single instruments, a couple of TAL-U-NO-LX, a couple of Reaktor ensembles… and, for effects, mainly Sountoys and Waves, being the NLS the most used plugin, as it’s almost in every track.

To be honest I don’t really know, as I don’t usually check the real-time peak meter while working on projects, and the average load has always stayed very steady with hyperthreading disabled. But you may be right, I’ll recheck the ASIO Guard status per plugin, just to be sure.

Yes, all the usual optimizations in BIOS and Windows are done, and all the drivers are updated. I even exchanged my good but old Nvidia GT-640 graphic card with a more modern Nvidia model, and also with a Radeon card, but they didn’t make a big difference in real-time performance for Cubase. All these tests were made when I purchased the 5960x machine a couple of years ago, and just before I finally decided to disable hyperthreading for the time being and call it a day, as the computer performs well enough for my needs.