Does ableton utilize all 8 cores?

Discuss music production with Ableton Live.
Post Reply
Jesse Cannon
Posts: 5
Joined: Tue Jan 08, 2008 11:22 pm

Does ableton utilize all 8 cores?

Post by Jesse Cannon » Sat Jan 26, 2008 12:41 am

I am probably buying a Mac Pro this week and run ableton 7 presently will Ableton use all 8 Cores or is it a waste for this app?

sweetjesus
Posts: 8803
Joined: Wed Mar 31, 2004 3:12 pm
Location: www.fridge.net.au
Contact:

Post by sweetjesus » Sat Jan 26, 2008 1:11 am

it does use all 8cores but i havent seen too many people post massive gains with 8 cores.

i run Live on a quad core pc setup which i scored for a grand and i havent been happier.

Angstrom
Posts: 14987
Joined: Mon Oct 04, 2004 2:22 pm
Contact:

Post by Angstrom » Sat Jan 26, 2008 1:12 am

I think that Ableton keeps assigning cores to tracks until it runs out of cores and then it will cycle round again. So track 8 will be calculated by core 8, and track 9 will be on core 1.

I don't think that they set a limit. I'm pretty sure it's open ended like that.

divisional
Posts: 40
Joined: Sat Jun 07, 2003 3:40 pm
Location: Phoenix, AZ

Re: Does ableton utilize all 8 cores?

Post by divisional » Sat Jan 26, 2008 1:55 am

Jesse Cannon wrote:I am probably buying a Mac Pro this week and run ableton 7 presently will Ableton use all 8 Cores or is it a waste for this app?
I am not sure myself about "using all 8 cores" but the performance of Live 7 on my new MacPro is just mind blowing. I doubt I will use as many tracks and plugins and effects as it would take to cripple it. Enjoy!

jonny72
Posts: 790
Joined: Thu Sep 27, 2007 2:43 pm

Post by jonny72 » Sat Jan 26, 2008 2:07 am

For any application, only one process can be assigned to one core at a time - so to use eight cores it would need at least eight processes going on at the same time. Plus I'm pretty certain the process to core allocation is performed by the cpu /os rather than the application so it would depend a bit on what else was going on at the same time. Double plus, some resources aren't duplicated so are shared between the cores rather than each having its own.

I've read plenty of reports of applications not using all cores even when in theory it should be. Which could be down to the application (whether it was compiled to use as many cores as possible) or the cpu / os.

sweetjesus
Posts: 8803
Joined: Wed Mar 31, 2004 3:12 pm
Location: www.fridge.net.au
Contact:

Post by sweetjesus » Sat Jan 26, 2008 2:10 am

jonny72 wrote:For any application, only one process can be assigned to one core at a time - so to use eight cores it would need at least eight processes going on at the same time. Plus I'm pretty certain the process to core allocation is performed by the cpu /os rather than the application so it would depend a bit on what else was going on at the same time. Double plus, some resources aren't duplicated so are shared between the cores rather than each having its own.

I've read plenty of reports of applications not using all cores even when in theory it should be. Which could be down to the application (whether it was compiled to use as many cores as possible) or the cpu / os.
no not if the app has multithreading built into it.

for example i used to use appls like after effects and combustion a lot, they worked on multiple cores/cpu's but ran the one process/thread.

you can even check in task manager, you can set the 'affinity' of a process to multiple cores (which then present itself to the application in the internal code).

Angstrom
Posts: 14987
Joined: Mon Oct 04, 2004 2:22 pm
Contact:

Post by Angstrom » Sat Jan 26, 2008 3:06 am

jonny72 wrote:For any application, only one process can be assigned to one core at a time - so to use eight cores it would need at least eight processes going on at the same time.
Which is what happens.
Live assigns each track to a core, then wraps around when tracks> cores

I can't find the authoritative Ableton post on this, It was most likely in the long gone Live 6 beta forum.

thefool
Posts: 1848
Joined: Sun Sep 16, 2007 3:29 pm

Post by thefool » Sat Jan 26, 2008 1:49 pm

sweetjesus wrote: no not if the app has multithreading built into it.
Its actually quite easy. I programmed a small app to test my new quadcore, basically just calculating primes. I just made the user [rather, me] able to select between 1, 2, 3 or 4 threads. All loops for the prime calculation was focused at it [no delays or window refreshes - just plain calcualtion], and if you chose to use 1 thread, it would show to use 25% [or around] in the taskmanager. Next up with 2 threads, 50% and so on.

So basically I imagine ableton would let tracks be in a thread by their own, OR they launch instances of VST's and effects in a thread by their own. There probably goes a little bit of processing power to manage the threads and sync them, but it shouldn't be any problem.
So its not as easy as it seems to write probably, but the theory behind it is.

Of course i'm not a live developer so i can't tell how they've done it :)


BUT yes it will probably use all 8 cores if they made it a little dynamic, which i'm quite sure they have [otherwise they would be kinda dumb :twisted:]

Post Reply