Multicore Faq

Renoise 1.9 supports now multicore CPUs. Here is what you can expect from it and what not:

Hyperthreading CPUs of the first HT generation CPU lines are not supported.

They will be treated like single CPUs as our testing results did not show any real performance gains, or even worse: They cause a performance degrease.
Why? HT Cpus are “faked” multicore CPUs. Realtime parallel Audio processing (the way we use the multiple cores) can not really be handled by them.

The i5 and i7 and newer Intel CPU’s with HT technology are much more efficient on this area so these CPU lines are supported.

2 CPUs = 2x performance speedup?

Unfortunately its not that easy. Handling multiple CPUs first costs the engine a bit of performance (you need to take care of the multiple “audio streams”), but this is in overall not very much. The amount of this overhead is visible when enabling/disabling the multicore support in an empty song (not playing back anything).
Then Renoise has to split your song int “independent streams” that the CPUs can then handle separately. In complex songs with a lot of send tracks and devices this limits the sharing capabilities a bit, which means that the performance is not very well balanced.

In practice this means that the speedup will be something like 1.2x to 1.6x, (on OS X even up to 1.8x) per CPU, depending on which song you are running.

Multicore support in VSTs:

Some VSTs already provide multicore support (like Kontakt), so Renoise wont be able to process such VSTs faster than before.

Taskmanager shows the same CPU usage as before!

This is not because all we did is faking the Renoise CPU meter wink.gif, but because the overall application performance does not increase. Let my try to explain why:

Lets say you have 2 CPUs and run a song in Renoise 1.8:
When the CPU meter showed 100 percent in Renoise, Renoise only used 100 percent of !one! CPU. The other CPU idled around then but you could not
go beyond the 100 percent in Renoise. Taskmanager would have shown an overall CPU amount of 50 percent then, as your other CPU had nothing to do at all.

If you load this song in Renoise 1.9, the CPU meter in Renoise will show something around 60 percent, Taskmanager will still show 50 percent.
The overall performance is still the same, but you now have 40 (100 - 60) percent free for more FX and stuff in Renoise!

1 Like

I have an Athlon 64 4600 x2 processor and I have gained considerable speed in Renoise as opposed to when I was running the same program on an Intel P4 (no hyper threading)

On the single p4, I usually choked with 3 vsti running and I had to increase my ASIO buffers to the max just to play it without any stutter, which of course made playback very sluggish.

Now, I can run many more vsti’s and have my ASIO set to next to the lowest latency (10) without any choking or stuttering. Very smooth indeed.

I just wanted to inform everyone that I personally haven’t experienced any downsides to daul CPU and Renoise besides sometime having to reinitialize my Asio sound driver, which I chalk up to the sound device and not Renoise. (Running through an USB EMU 2020 24-bit)

Overall, I have to say that I am very pleased with the performance gains. I can now work like I have always wanted to in the past.

Great work.

MULT-CPU ROCKS!! :yeah: :yeah: :yeah: :yeah: :w00t: :w00t: :w00t: :w00t:

For anyone using OSX and is interested how much CPU core’s the current project is using: You can get XCode from the App Store, in XCode go to Menu XCode -> Open Developer Tool -> Instruments. Inside the Instruments App go to Preferences (in the main menu on the navigation bar) and in the General tab you can freely enable/disable the HyperThreading as well as activate or deactivate as many CPU-Cores as your box got. I found this to be a great tool to see how many cores are required so that my project is working properly. As for my own experience, i would tend to say it might be better to have less CPU Cores available but the ones installed should have more Processing Power (GHz) …

p.s. when changing the CPU core setting inside renoise, i didn’t see any difference on the CPU load. When changing the setting using XCode, i saw a difference.