Jump to content

Anyway to tell Logic how to distribute CPU cores???


deckard1

Recommended Posts

Hi,

 

I'm using a plugin that seems to be CPU intensive...Helix Native. When I use the plugin the CPU meter jumps to around 75%, and sometimes higher, for a single core. Why doesn't Logic distribute the load to the other cores (i.e. threads) to minimize the CPU load? My buffer setting is at 128 samples...otherwise I have latency issues with recording guitar.

 

1065872905_ScreenShot2021-05-21at9_48_00PM.png.cc8da837f37e721777d602d51a84acf4.png

 

I'm on an older MacBook Pro...not sure how much that contributes. Computer specs in my signature below.

 

Thanks.

Link to comment
Share on other sites

Hi,

 

I'm using a plugin that seems to be CPU intensive...Helix Native. When I use the plugin the CPU meter jumps to around 75%, and sometimes higher, for a single core. Why doesn't Logic distribute the load to the other cores (i.e. threads) to minimize the CPU load?

Because it's more efficient to keep all the calculations for a single process such as one plug-in processing one audio signal all onto one single core than to spread out over several core and then have handle that.

 

If on the other hand the CPU load is coming from multiple plug-ins on the same channel strip then there's a way to redistribute the load onto several cores: Logic Pro/Express: Tips for balancing multi-core performance

Link to comment
Share on other sites

  • 6 months later...

Anytime a computer program seeks to distribute an otherwise-sequential workload among "multiple processes/threads/cores," there is a certain amount of overhead which can actually become quite(!) expensive. The process must now deal with, for example, making sure that all of the various work-products delivered by the various threads are properly sequenced in time. (Much easier said than done.) And, to be sure that they do not actually waste more time, attempting to do this, than they could have gained.

 

"Yes, I have eight trains at my disposal – but they must finally arrive, in the correct order, on one single track."

 

This is exactly why an application might instead choose to specify that the workload has so-called "CPU affiity" to a particular, single, hardware resource. And, why this is very likely to be the best decision. The design of a "real-time application" (full discosure: "software geek" here!) very often becomes: "Hobson's Choice."

Link to comment
Share on other sites

  • 4 weeks later...

Processing audio is a simple linear math operations (add/subtract/divide/multiply) which cannot be efficiently divided to multiple cores.

 

That's why hardware synths use special CPU's for example. It works great with linear math operations but completely suck at multi-tasking/threading operations, such as famous Motorola 56300.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...