About multicore performance

Official support for: mutools.com
RELATED
PRODUCTS

Post

Jo, you obviously did a lot of work and probably a lot of performance tests while making MuLab multicore processing capable. So, I'm curious to know how much performance has been improved, and in what situations we really benefit from multicore processing in MuLab :)

Or perhaps anyone else knows more about this?

Post

The more cores you have the better. The faster they work the better. It may be, depending on several system parameters, that on a rather slow dual core system, the performance gain is smaller than you might expect/hope. The multi-core system also adds a little bit of overhead. That's the case for any multi-cored (music) app because the parallel processes need to be synced and that syncing costs a bit of cpu. But on all computers i checked the new M5 multi-core audio engine clearly does a (much) better job than M4, depending from system to system.

Post

Thanks for explaining. :)

So how much perfomance gain would we roughly gain per extra core, about 10-20 percent ?

Post

I can't answer that question, i think that's too dependent on the system (incl. audio setup).

Why do you ask? Can't you make such concrete comparison on your system by comparing MuLab 5 with Num Audio Threads = 1 and MuLab 5 with Num Audio Threads to the maximum real cores. (eventually minus 1 for keeping a snappy UI).

Post

Interesting test, i think ill do that :)

CPU-Z says cores = 4, threads = 4. I should set that number in mulab then? It was by default 4 in beta but in release it was set to 2.
:hug:

Post

1 core = 78% cpu
2 core = 50%
4 core = 50%

weird that cpu-z says 4 cores :?
:hug:

Post

It also depends on the parallelism on Session MUX level.

Post

On my Win7 64 with i7 3.4GHz:

Each track plays 8 notes into a MUX that contains 4x patch factory/pads/Expensive.
Each patch of Expensive contains 2 osc; 2 filter per voice plus Chorus/EQ/Delay/Reverb as effect.

1 core 80% cpu with 1 track
2 cores 80% cpu with 4 tracks
3 cores 80% cpu with 6 tracks
4 cores 80% cpu with 8 tracks
cpu is the average readout in Mulab

So that's 8 tracks x 8 notes x 4 patches/MUX x 2 = 512 oscillators and filters.
And there are 32 Reverbs going

Post

mutools wrote:I can't answer that question, i think that's too dependent on the system (incl. audio setup).

Why do you ask? Can't you make such concrete comparison on your system by comparing MuLab 5 with Num Audio Threads = 1 and MuLab 5 with Num Audio Threads to the maximum real cores. (eventually minus 1 for keeping a snappy UI).
Ahh yes, thanks for the tip.

It's an edit in the config text file I assume. I'll try that tonight :)

Post

You set it under audio interface in the menu
:hug:

Post

Crackbaby wrote:You set it under audio interface in the menu
Ahh yes I see, thanks.

Post

Mulab runs very nicely on my computer now :) It depends a lot on the plugins used. With one of them I easily get to 30% running one instance, and it's not even Diva or anything fancy like that. But it is definitely a plugin issue, nothing to do with Mulab.

What I am wondering is about the difference between the 32- and the 64-bit versions. Since I still have a few SE plugins, I only use the 32-bit version of Mulab at the moment. Would it be worth switching to the 64-bit version or has that difference become even smaller now with multi-core support?

I don't really trust CPU meters anyway. When I open a new project, load one instance of the same plugin, pick the same patch, and play the same chord, the meter on Mulab shows quite a different value than the one on Tracktion, when it should probably be pretty much the same. So, which one is right?

Post

fluffy_little_something wrote: What I am wondering is about the difference between the 32- and the 64-bit versions. Since I still have a few SE plugins, I only use the 32-bit version of Mulab at the moment. Would it be worth switching to the 64-bit version or has that difference become even smaller now with multi-core support?
The terms 32-bit and 64-bit refer to how much of your computer's memory (RAM) can be used by applications. The 32-bit version of MuLab (like all 32-bit applications) can use up to four gigabytes of RAM, which means that it may not be possible to use very large sample collections or very memory-hungry plug-ins.

In contrast, the 64-bit version can use a theoretical maximum of 16 exabytes of RAM - much more RAM than computers actually have.

There are no further technical advantages of a 64-bit version afaik.

So multi-core support was very much asked for to speed things up CPU wise :)

Post

Good to know. I don't use sample libraries, but only normal synths (mainly Tal stuff), so I guess I will stick to the 32-bit version then till that ceases to be offered by Mutools.

Post

32bit and 64bit refer to CPU architecture. This goes well beyond just the amount of RAM that can be addressed. The physical restriction on addressable RAM is the number of address lines on the CPU address bus.

http://en.wikipedia.org/wiki/X86-64#Arc ... l_features is probably a good quick summary.

Post Reply

Return to “MuTools”