Multi-core support question + introduction

Hello everybody!

First, let me introduce myself - my name is Oleg, I currently play keyboards with a metal band, we do some international touring and recording. I have about 13 years of experience with studio gear.

I am finally trying to transition from all-hardware (mostly Roland rack modules with a controller) to VSTi rig, for flexibility and quality of sound.

Anyway, my question is:

I monitor CPU activity to make sure I don’t overload my system. Sometimes I get close to 100% on 2 first cores, but 3rd and 4th core are always parked, they don’t ever share the load. My CPU has 2 physical cores with Hyper Threading.
I tried changing multicore support option in Cantabile from 2 cores, 4 cores, also changed in Kontakt plugin options.

Is Cantabile using only 1st core with Hyper Threading and 2nd physical core idling?
How can I get Cantabile to utilize all 4 cores? Should I disable Hyper Threading?
Should I set multi core support in Cantabile to 2 or 4 cores (doesn’t seem to make any difference)?

What bothers me is - I can’t use 3rd and 4th cores at all, which limits my system’s performance, and when I hit 100 notes polyphony in Kontakt, it starts skipping samples… Otherwise seems like my 6 year old Core i3 is fine for what I do

Currently I run an experimental setup which is quite modest:

first gen Core i3 laptop (4GB ram, SSD, windows 7 32 bit) - Lenovo ThinkPad
built-in sound card using ASIO4ALL (getting 72 samples @48kHz), getting the RME Babyface soon
Cantabile Lite (gonna upgrade to paid version if the rig proves reliable)
Some plugins - mostly Kontakt , also some VA synths

The laptop is optimized, WiFi off, nothing running in the background, no antivirus, no Bluetooth, nothing connected except my USB midi keyboard

1 Like

Steve Steele, in his video below, suggests NOT using the multi-core settings in Kontakt if you are using them in your DAW/Host. He also has suggestions for setting the sample buffers.

I’ve heard from many folks to set the cores to your maximum minus one, leaving one core for the operating system.

Brad has an article on multi-core and hyperthreading in his “Glitch Free” book on pages 57 and 59 obtainable here: https://www.cantabilesoftware.com/glitchfree.

There also is an article on it here: https://www.cantabilesoftware.com/guides/understandingMultiCore

I’m sure Brad and others may have some more input to offer on this topic!

Terry

1 Like

Hi!
Nice to see someone from Russia here :smile:

kind regards

You definitely don’t want to be using Hyper-Threading. I’ve found it can dramatically adversely affect real-time audio work.

You don’t necessarily need to disable hyper threading but you should try to limit the number of audio threads to the number of physical processor cores. This is why Cantabile’s audio thread count defaults/recommends the number of physical cores.

If you’ve enabled multi-core in Cantabile, disable it in any plugins and vice versa.

You might also find this post interesting.

Brad

Great read on the meters of the two programs Brad.
One question this raises for me is regarding u-he Diva. I’ve been running it in Cantabile with multicore enabled in the plugin but your reply suggests that isn’t optimal.
I will try some experiments shortly and check the impact.
Diva is just one of many fairly CPU intensive synth plugins I run and most of the others aren’t necessarily multicore optimized.
I thought I noticed a significant drop in performance with Diva in Cantabile when I turned off Divas multicore option but perhaps I was wrong.

Update for clarity - I’m running Cantabile Solo on a non-hyperthreaded Q9450 quad core CPU with speedstep disabled in bios.

As with anything multi-core related… it depends. If you’re just running one instance of Diva and nothing else then multi-core in Diva, single core in Cantabile would probably work better. If you’ve got a bunch of plugins that aren’t chained then multi-core in Cantabile, single core in plugins will probably work better.

All that said - unless you’re running really close to the edge, or running a performance intensive plugin these settings shouldn’t be crucial - typical plugin/host settings should work well enough for most scenarios and I wouldn’t get too hung up on it unless you’re getting close to hitting problems.

Brad

1 Like

Thanks heaps for the reply Brad. I had a bit of a play around with various combinations and, as you mentioned, the CPU settings in Diva made by far the biggest difference. With multicore enabled in Diva, the Cantabile settings made very little difference.
Given that I’m running many different instruments in Cantabile, I’ll leave it at the maximum physical CPU core setting and keep multicore on in Diva. That combo works well and allows me to use other non-multicore plugins without tweaking settings.

I encountered this very issue today, as it turns out. I suddenly had a Diva instance put my CPU load through the roof, like, 300%. Turn out, if multicore support is enabled in Cantabile and NOT in Diva the results are very, very bad. Multicore support turned off in both was better but is seems having multicore support on in both Cantabile and Diva is best- about 30% load.

Anyone experimented with the “physical cores -1” setting?

1 Like

hi guys, I’ll just write here not to open a similar new thread.

I’m using Cantabile with 2 instances of Omnisphere (a MULTI in the first, and a KEYSCAPE patch in the second) and a MEDIA PLAYER (sometimes a MIDI track for the tempo too). I was reading this: https://www.cantabilesoftware.com/guides/understandingMultiCore and I find that I should keep the number of physical CPU (which I do). But I was wondering, does Cantabile recognizes the two instances of Omnisphere 2 as the same plugin even if they do separate things (in MULTI, it often uses CPU for synthesis; whereas in KEYSCAPE it uses samples)? So, what would be the best choice for Multi-processor Mode, in this situation (2x Omnisphere 2, Media Player and MIDI track)? Thanks a lot.

Any particular reason for having two instances of Omni at the same time as opposed to just adding the Keyscape patch to the multi in a single instance?? I was under the impression that as a ROMpler all the waveforms that it used for synthesis were samples.

because I use the MULTI instance on the upper keyboard (STACK MODE) and KEYSCAPE on the lower keyboard. I would be very happy if I could put KEYSCAPE into the MULTI and change the MIDI CHANNEL to play the PART with KEYSCAPE only on the lower keyboard, but I can’t.

Huh, I just make Multi’s and assign parts to whatever channel/controller I need. Not sure why you can’t use MIDI routhing to select whatever controller/channel you need. Maybe a screenshot of your setup would help!

EDIT!!! Cantabile 2! Oh sorry- I wasn’t paying attention. OK. Disregard my blather lol

what do you mean with "Cantabile 2 "? I’m using Cantabile 3 and Omnisphere 2. And, in STACK MODE I can’t assign a part to a different MIDI CHANNEL, but I can use only a single MIDI CHANNEL…

Dang, you’re right, I read it right the first time. My eyes are going wonky. . I would load a single instance of Omni, make a multi with all the sounds I need, route the top keyboard to whatever sounds you want to stack and the other to the Keyscape patch. And run the whole thing in multiprocessor mode. BUT, that said, adding the 2nd instance of Omnisphere is probably making little difference on your CPU load, so if there’s some need to do it that way that I’m completely missing I’m guessing it’s no big deal. I think you definitely want to be using the default setup with Cantabile using as many physical cores as you have.

I think. :wink:

[quote=“FredProgGH, post:14, topic:1487, full:true”]I would load a single instance of Omni, make a multi with all the sounds I need, route the top keyboard to whatever sounds you want to stack and the other to the Keyscape patch.
[/quote]

yes, but… how do you do that, if you can transmit only on a single MIDI CHANNEL in STACK MODE? This is the piece I can’t understand… :confused:

Don’t use STACK mode. You don’t need it. All the functionality you need to combine, split, map and otherwise access patches is within Cantabile itself, without the limitation. I’ve never used STACK mode. Just make a simple MULTI.

4 Likes

right, now I understand. now I have to choose between staying with double instance or re-doing all the split/layer in Cantabile for each song :slight_smile: thanks for the help!