Jump to content
synkrotron

First CPU core is spiking more than other cores

Recommended Posts

I'm packing in for the night now.

Been having fun in CbB... Quite impressed how it was able to rip all the old instrument definition files that I create nearly twenty years ago now.

One thing is worrying me a bit, though, seeing as my current little test project only has a couple of VST instances.

Core 0 is spiking quite a bit compared to cores 1 to 7. Every now and then I get the odd crackle.

That was a bit of an issue with SONAR and I'm not sure if it was ever addressed properly. I mean, there was a fix or two but I can't remember the outcome.

I've been running with my WiFi and wired internet connection off.

I have been through tasks in Task Manager, turning off processes that I knew for sure were not required.

One of the VST effects I am using is Adaptiverb, which is a know CPU hog, but it has switches to minimise that.

Any thoughts?

I have updated my signature with my setup. Well, I've not added a couple of items, but the PC/laptop spec is there.

See you in the morning...

cheers

andy :)

 

Share this post


Link to post
Share on other sites

It has been my experience that the first core is more utilized than the others. I believe its more about the way CPUs work. What is their responsibility.   The first core is going to work with the program and the housekeeping of the OS.  The other cores chime in when the program asks for them to take some load.  If it were a simple round robin I think things would seem more equal. Its not. That is the best way I can explain it.  Also sometimes  its not as well programed as it could be. I am not saying this is true of Cakewalk. I do know Noel has done a lot to distribute work to as many cores as one has. The OS has something to do with what goes where. 

Share this post


Link to post
Share on other sites

I would try disabling ALL effects temporarily to see what affect they might be having on CPU (Keyboard shortcut "e").

Share this post


Link to post
Share on other sites

Thanks @John and @abacab :)

Just powered windows and let it settle down.

I brought up both Task Manager then disabled any unwanted processes, even if they were showing as "suspended." Like Skype, for instance...

I switched to the performance window in Task Manager. Network was stressed but it didn't seem to affect CPU usage. But I unplugged the network cable anyway, which disabled the network adaptor.

I then opened Resource Monitor and selected CPU view so that I could see all eight cores.

Opened Cakewalk and my little test project.

Everything seems a bit better this morning for some reason. Perhaps Defender was doing a background check last night and I didn't spot it.

Currently, Task Manager is reporting that Cakewalk is using around 10% CPU and overall the CPU is at around 12% usage. The Performance monitor in Cakewalk has been averaging well across all eight cores, although at the moment, while typing this with the project still playing, I am getting some clicks.

 

I'll just have to keep my eye on this over the coming days/weeks as I develop this test project into something of what I would consider "normal size."

I've not bothered disabling any effects at the moment as, like I said, activity across the cores appears to be okay. As I add more and more VST and VSTi I may have to look into that.

 

And, of course, my laptop is over five years old now and it was a great spec when I bought it, within quite a high budget. Can't quite afford to upgrade just yet as I am currently "retired," with no money coming in at all.

cheers

andy :)

Share this post


Link to post
Share on other sites

One core can show higher use depending on the project since the multi-processing engine scheduler has work to do to farm out mixing tasks. The scheduler itself takes some time on one of the cores. Additionally there is GUI processing which is always on one thread.

In most cases this is really not something you should care too much about. There is no such thing as perfectly balanced cores in multiprocessing unless you have artificial equal load tasks. There is one thing you can try assuming you have a quad processor or higher system.

Go to Preferences | Configuration file and set ThreadSchedulingModel to 2.  This uses an independent thread for scheduling tasks and may may result in a more balanced load with Quad processor systems or higher. 

  • Like 1
  • Thanks 2

Share this post


Link to post
Share on other sites

Thanks for chipping in here, @Noel Borthwick :)

I've just checked my configuration, which would have been copied over from SONAR Platinum, which I never uninstalled.

It is set to 2, which I think was as a result of discussions about core balance on the old forums.

I'm going to carry out a few more tests on Cakewalk and reproduce the same test project on REAPER and Studio One, just because I own both of those.

My guess is that I am not going to find the "perfect" solution here. REAPER may be perceived as being kinder to CPU, but I am having issues with MIDI timing. Not sure what Studio One brings to the party, but I did like it when I was only doing VST stuff, but there is no Event List so in the end I won't be using this DAW for MIDI stuff.

 

Anyway, back to the grind :D

 

Share this post


Link to post
Share on other sites

Having ThreadSchedulingModel set to 2 may "look" nicer on the CPU meter but I've found it actually makes audio performance worse. I have a quad-core (8 with hyper threading) laptop and the 0 setting works the best. Of course, there could be other issues that could be causing audio clicks/dropouts. For instance, on my computer (it's actually a 2016 MacBook Pro running Boot Camp ha ha) I have to disable the ACPI battery driver (that monitors the battery level), the Wi-fi adapter, and the onboard sound to get glitch-free audio performance. The battery driver is the worst culprit. You'll want to download the LatencyMon program (do a Google search) and run it to see if other drivers are interfering with your computer's audio performance. 

Edited by Shayne White
  • Like 1

Share this post


Link to post
Share on other sites

Thanks for your input @Shayne White :)

Okay, perhaps I need to try the other settings for ThreadSchedulingModel, see what happens.

To be honest, after last night's "problems," I am losing interest in achieving my goals, regardless of which DAW I am trying. CPU core balancing appears to be the least of my worries.

I've had LatencyMon for some time now. I've been using it to look at things in the last couple of days. Not sure how to deal with the results. You mention WiFi, and that does seem to cause some "issues," as does my wired network. If I disable all network stuff the associated drivers no longer figure.

I'm going to try a few more things today and I will probably post another topic once done. Like I said, CPU issues may not be the problem in the grand scheme of things.

cheers

andy

Share this post


Link to post
Share on other sites

FWIW, If the machine is having issues such as high DPC Latency, it doesn't matter what DAW software/plugins you're running (all with be negatively affected).

 

BTW, Unplugging the LAN port disconnects from the Internet... but it doesn't actually disable the LAN controller.

ie:  If the LAN controller's driver is causing high DPC Latency, simply unplugging the LAN port won't resolve it.

You can update/roll-back the LAN driver... or disable it (Device Manager or motherboard's BIOS) while working with audio.

Edited by Jim Roseberry
  • Like 1

Share this post


Link to post
Share on other sites
16 minutes ago, Jim Roseberry said:

FWIW, If the machine is having issues such as high DPC Latency, it doesn't matter what DAW software/plugins you're running (all with be negatively affected).

 

BTW, Unplugging the LAN port disconnects from the Internet... but it doesn't actually disable the LAN controller.

ie:  If the LAN controller's driver is causing high DPC Latency, simply unplugging the LAN port won't resolve it.

You can update/roll-back the LAN driver... or disable it (Device Manager or motherboard's BIOS) while working with audio.

Thanks for input, Jim, much appreciated.

As I have sort of suggested above, CPU core balancing now appears to be my least concern. I don't want to go into too much details in this post. I am in the process of drafting a new post with regards to my complete setup, dreams and wishes and all that. I will also be posting my LatencyMon reports and screenshots. Not great reading but, surprisingly, DPC seems to be "reasonable."

And you are right in that, it doesn't matter which DAW I am using. The big "but" here is, in all my years of posting in various forums, the Cakewalk/SONAR community has always been the biggest help.

cheers, and thanks again,

andy :)

 

  • Like 1

Share this post


Link to post
Share on other sites

I'm using a Focusrite 2i4 interface connected by USB 3 port to a Win 10 desktop with an i7 processor (HP EliteDesk  800 G3, small form factor). My ASIO control panel is set to a buffer size of 128 with a sample rate of 44.1 KHz.   I was getting a few pops and crackles at that sample rate which got much worse when I lowered it to 64 and still persisted (although, very rarely) even when I raised it to 256.

I Went to Focusrite's site and found a lot of tips for optimizing a Win 10 PC for use with a DAW here:

https://support.focusrite.com/hc/en-gb/articles/207355205-Optimising-your-PC-for-Audio-on-Windows-10

Here's the one suggestion that seemed to make all the difference for me:

3. Set processor scheduling to "Background services"
This will improve the performance of your audio drivers on your computer. To do this:
- In control panel select "system"
- Go to "Advanced system settings" and then the "Advanced" tab
- Click on "Settings.." under Performance to bring up the "Performance Options" window.
- Go to the "Advanced" tab and set processor scheduling as "Background Services"
- Click "Apply" then "OK"

Now I get zero crackles all the way down to a sample rate of 64 (but a few do start to show up again at 32).  Anyway, It's rock solid at 128 so I'm leaving it there for now.

Edited by Sailor55
  • Like 1

Share this post


Link to post
Share on other sites

So many variables! I would think "Adjust for best performance of: Programs" would be the choice. Mine is set there and I've never had audio issues.

Also in that window is the paging file size (virtual memory). Mine is set to auto manage but in the past (pre Win10) I've always set it to a permanent size as I didn't like Windows messing with it. Now I run 16 GB of ram and don't have any huge audio projects so for me probably not an issue. Core meter never hits over 25% and mostly stays just barely visible.

  • Like 1

Share this post


Link to post
Share on other sites

@synkrotronNot wishing to sound condescending but you are in high performance mode, yes? I'm just looking at that Adaptiverb on what sounds like a VSTi track on a somewhat aging mobile CPU, so not being in high performance mode is a bad idea as Zynaptiq plugins can get pretty intense pretty quickly.

Spiking one core is obviously loading one core too heavily, so if you've got the verb as an insert on a demanding VSTi with (hopefully not) a bunch of other inserts on the track as well then that's something you could look into. Run the output of the VSTi to a bus, then load that bus with the plugins. Split the verb off to a send as well so it's not on the bus. Try increasing your buffer.

Be aware that you might be asking too much; many modern plugins are getting pretty demanding.

  • Like 1

Share this post


Link to post
Share on other sites

@joens

I/O operations such as streaming large amounts of data to and from Audio interfaces are driven under hardware interrupt. A buffer is loaded  with data and the hardware is triggered to send it on its way independently.  The CPU is not  bothered again until all the data has gone. Somewhere before that time (when the buffer is getting low) an interrupt is generated to run an OS service to reload the buffer.

Those interrupts are 'background services'. If 'program priority' takes precedence these interrupts will not be serviced in time. The result: hiccups and chokes in the audio stream. The smaller the buffer the more often interrupts will occur. By prioritizing background tasks buffers can be smaller.  That's my story and I'm sticking to it!

And yes, I think it's also a good idea to run your PC in the 'High Performance' power mode too.

Share this post


Link to post
Share on other sites
16 hours ago, Sailor55 said:

Here's the one suggestion that seemed to make all the difference for me:

3. Set processor scheduling to "Background services"

Thanks @Sailor55

I am sure that I had already done this but I often forget to check the more subtle settings after big windows updates, which have a habit of returning settings to default. I've switched it back as you suggested but I have not yet found the time to check out if it helps.

cheers

andy

Share this post


Link to post
Share on other sites
14 hours ago, sjoens said:

So many variables! I would think "Adjust for best performance of: Programs" would be the choice. Mine is set there and I've never had audio issues.

Also in that window is the paging file size (virtual memory). Mine is set to auto manage but in the past (pre Win10) I've always set it to a permanent size as I didn't like Windows messing with it. Now I run 16 GB of ram and don't have any huge audio projects so for me probably not an issue. Core meter never hits over 25% and mostly stays just barely visible.

Hi @sjoens :)

Okay, a bit at loggerheads with @Sailor55's post, so I will just have to run with both and see what works best for me.

Memory wise I also have 16GB of RAM. My paging file size is set to a fixed 1GB.

cheers

andy

Share this post


Link to post
Share on other sites
11 hours ago, ien said:

@synkrotronNot wishing to sound condescending but you are in high performance mode, yes? I'm just looking at that Adaptiverb on what sounds like a VSTi track on a somewhat aging mobile CPU, so not being in high performance mode is a bad idea as Zynaptiq plugins can get pretty intense pretty quickly.

Spiking one core is obviously loading one core too heavily, so if you've got the verb as an insert on a demanding VSTi with (hopefully not) a bunch of other inserts on the track as well then that's something you could look into. Run the output of the VSTi to a bus, then load that bus with the plugins. Split the verb off to a send as well so it's not on the bus. Try increasing your buffer.

Be aware that you might be asking too much; many modern plugins are getting pretty demanding.

Hi @ien :)

Yes, I am running my laptop in high performance mode.

I've been using Adaptiverb for some time now, well, since it was released, and I am aware of its demands and work around that. My project right now is very small, in terms of VST and VSTi and Adaptiverb, although CPU hungry, doesn't usually present any problems.

cheers, and thanks,

andy

Share this post


Link to post
Share on other sites
On 2/4/2019 at 1:29 PM, Chuck E Baby said:

You can also try disabling Plug in load balancing in preferences. Ive done it from time to time.

Hi again @Chuck E Baby :)

I had a look at this. It wasn't enable for some reason. Not sure if it made a big difference.

On the help page it shows this image:-

NewFeatures.017.1.png

Not sure what this means to be honest. Taking the image at face value it seems to suggest that if you have an FX bin with 8 effects, as show, they are distributed across the CPU cores, as show.

But what if each of your FX bins only has 1, 2 or 3 effects in them. Does that mean that they are only distributed across cores 1, 2, 3?

Or does it distribute effects across all the FX bins to each of the core. For example, say track 1 has 3 effects in the FX bin, track 2 has 3 effects in the track bin, will those effects be distributed across cores 1 to 6 in turn? Not sure if I put that across correctly.

I wonder if this is something that @Noel Borthwick could shed some light on, assuming no one else can?

 

cheers

andy :)

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×
×
  • Create New...