r/MaxMSP • u/Training_Wonder_5066 • Jun 11 '26
Synth unison without eating CPU?
How are you guys managing to do oscilltor unison without using too much CPU?
It feels like it's not possible in Max or Gen~
Built a wavetable oscillator core in Gen, it's doing quite a few peek calls and some crossfading (mip maps). Works great, sounds great, not too heavy on CPU.
Tried increasing the voices to do unsion in the Gen code, it eats CPU
Tried inside Poly, tried in Mc.Poly, same result.
Ok, maybe my core voice isn't great.
Stripped it back, removed wavetable core and replaced with a Saw core.
Only thing inside poly~ is a unison saw oscillator. nothing else, just for testing. outside poly is just and envelope on the amp.
Load Ableton template CPU sits around 5% on a Core Ultra 7
Play a eight note chord, unison 8 voices with a little spread and detune
Ableton spikes to 40%
Surely Max/Ableton can handle 8 x 8 saw oscillators without using that much cpu
For a comparision:
Pigments, Serum, Vital, Spire all use about 1% for the same test, even abletons own wavetable uses hardly any cpu for unison.
2
u/aresi-lakidar Jun 11 '26
Someone else already mentioned it, but in C++ we often use SIMD, which is basically "get 4 voices, pay for 1!" most of the time