[3.0][XRNS] Classic Mau5chords

Not much to say about this. The classic Mau5chords in an XRNI.

The only special things to regard are done in the pattern. On each line playing some notes the offset is triggered with a “random” value to achieve the impression of free running oscillators.

Though using only 4 sample layers, the instrument is quite heavy on the CPU. Because of that NNA is set to “Cut” on all samples to not waste too many voices. To achieve polyphonic release phases of the instrument for each chord change the notes are moved to different tracks in the pattern. When you see it, you’ll know what I mean.

Download

The little demo sequence shows only an impression of the variation range you can achieve with this instrument. Use the Macro Knobs to adjust the sound to your needs.

Have fun and enjoy!

Cheers
-BA

Nice sound BA.

very cool. loving the macro set also

Thank you.

it is indeed quite heavy, but thanks for sharing!

Yeah, something smells a bit fishy about the CPU usage. Even when you set the filter in the modulations to “none” the instrument still uses about half of the CPU it used before.

Thanks

Nice…

But it takes so much CPU!!! This is really annoying, so Renoise instruments are not usable at all for serious production?

For the moment I agree. Using native instruments like this one right now doesn’t make much sense. But the layer-fix Taktik announced for sounds like this one and their filters will probably free up about 30-50% of the current usage. I have to admit, I was suprised myself, that a quite modest layered (and with 4 - max. 8 - notes also modest played) instrument already has an impact like that on the CPU. I still hope not only the filters but also the envelopes for each layer are thrown together to a single one. I’m actually confident, that the upcoming fixes will make the instruments more usable in practice.

The CPU usage does seem a bit high when you look at this example in isolation, but I think it’s important to keep in mind that Renoise is designed as a multi-threaded/multi-core application, and it will obviously benefit from situations where your CPU cores can be utilised more effectively.

In a more typical real world situation, your song would have other elements spread across multiple different tracks, and the load would be shared among those tracks (and your CPU cores) accordingly. I believe this is where you’ll start to see things even out a bit more.

Nevertheless, the performance will get optimised, as taktik has already pointed out.

Just out of curiosity, I did some very quick benchmarking with Bit_Arts’ example. I took his Mau5chords sound and duplicated it (track, instrument, automations, etc) to give a total of 16 instances. I then enabled each instance, one-by-one, and took CPU readings from Task Manager (which is always more reliable), and just observed where the CPU % seemed to hover most of the time. By no means scientific, but good enough to get an idea of things, I’d say.

The CPU did occasionally spike a little bit higher than the values listed below, but I put that down to Windows’ usual system fluctuations. My system is pretty much stock, and not optimised for high performance or overclocked in any way. This is just my typical day-to-day usage of Renoise where I keep it open to sketch ideas, while also having other applications running such as Chrome web browser, uTorrent, IRC, Sublime Text, and so on.

I should also point out that I can play all 16 instances simultaneously without interruptions or audio drop outs. If I try to push my system any further – adding more instances, increasing sample rate, lowering latency, attempting to use other applications, and so on – then it does indeed start to fail and break up.

My basic system specs:

  • MSI GT70 laptop (GT70H-804817B)
  • OS: Windows 8 64-bit
  • CPU: i7-3630QM 2.4 GHz (up to 3.4 GHz Turbo)
  • RAM: 8GB DDR3
  • Audio: Shitty integrated Realtek ALC892
  • Renoise: 3.0 beta 5, 32-bit

My Renoise settings:

  • Audio -> Device type: DirectSound
  • Audio -> Sample rate: 44100 Hz
  • Audio -> Latency: 15 ms
  • Audio -> Use hardware buffers: ON
  • Audio -> Dithering: ON
  • Audio -> Realtime audio CPUs: 8
  • Audio -> Overload prevention when CPU is above 90% for at least 500ms
  • GUI -> Enable GUI effects and animations: OFF
  • GUI -> More compatible GFX updates: OFF
  • GUI -> Limit frame rate to: 30 fps

My results:

  • 1x Mau5chords: 6.5%
  • 2x Mau5chords: 9.5%
  • 3x Mau5chords: 13%
  • 4x Mau5chords: 18%
  • 8x Mau5chords: 38%
  • 16x Mau5chords: 75%

Here’s the stress test song, if anyone is curious to test it themselves:
Bit_Arts-Mau5chords-Stress-Test.xrns

@Bit_Arts: Hopefully you’re cool with me sharing this, purely in the interests of testing. If not, just say the word and I’ll take it down.

For a shitty realtek that sounds quite promising…

System specs in my sig.

My Renoise settings:

  • Audio -> Device type: ASIO - Audio -> Sample rate: 44100 Hz - Audio -> Latency: 23 ms (1024 samples) - Audio -> Use hardware buffers: ON - Audio -> Dithering: ON - Audio -> Realtime audio CPUs: 4 & 8 - Audio -> Overload prevention when CPU is above 90% for at least 500ms - GUI -> Enable GUI effects and animations: OFF - GUI -> More compatible GFX updates: OFF - GUI -> Limit frame rate to: 30 fps

My cpu readings come from Renoise, not the taskmanager!

My results on 4 cores:

  • 1x Mau5chords: 15.1% - 2x Mau5chords: 15.2% - 3x Mau5chords: 15.8% - 4x Mau5chords: 18.7% - 8x Mau5chords: 37% - 16x Mau5chords: 82% (crackles a lot here)
    With DirectSound i can run 16 tracks with a buffersize of 30msecs.

My results on 8 cores:

  • 1x Mau5chords: 15.1% - 2x Mau5chords: 15.3% - 3x Mau5chords: 15.3% - 4x Mau5chords: 17.9% - 8x Mau5chords: 35.9% - 16x Mau5chords: 61.2% (Still crackles here, a lot less, but unfortunately not gone)
    I can run directsound with 8 cores with the minimum buffersize (5msecs) and the CPU does not raise above 61% either.
    DirectSound runs smoothly compared to my ASIO drivers… a big disappointment here

Are you guys running the 64bit version of Renoise? I use the 32bit version and I only can go up to 8 Mau5chords. :(/>

Specs: Win7 64bit, 8GB RAM, AMD FX-8350 4GHz (8 cores), M-Audio Fast Track C400, audio and GUI settings same as vV’s.
Asio or Direct Sound makes no difference for me (in this context).

No need to worry.

Seems everyone here is running a dream machine. I’m able run 7 instances without crackles.

System specs:

  • Windows 7 64-bit - Intel Q9300 @2.5 GHz - 4GB DDR2 DC - SB X-FI Xtreme Music - Renoise: 3.0 beta 5, 32-bit

Renoise settings:

  • Audio -> Device type: ASIO - Audio -> Sample rate: 44100 Hz - Audio -> Latency: 50ms (fine, because I rarely play live) - Audio -> Dithering: ON - Audio -> Realtime audio CPUs: 4 - Audio -> Overload prevention when CPU is above 95% for at least 500ms - GUI -> Enable GUI effects and animations: OFF - GUI -> More compatible GFX updates: OFF - GUI -> Limit frame rate to: 30 fps

My results:

  • 1x Mau5chords: 31% - 7x Mau5chords: 67%

The exactly same sound setup in Sylenth1 (1 instance, with all FX too) takes about 10%. Of course I know I can’t directly compare the results to each other, but it can serve as a mark.

Since I was curious, how much of the difference is taken by the filters, I set the XRNI filter to “None”. 1 instance then drops from 31% to 15% CPU usage. Also switching off the AHDSR then dropped to 10%. Then I replaced the AHDSR with a Modulation Envelope, using one initial point only to set volume and the “Release” set to 256. CPU usage went up to ~ 12% (only). To me this actually proves, the redundancy of the modulations (like AHDSR) matters. Don’t panic, I’m not talking about the modulation concept here again. Just about the redundancy caused by the seperate processing of layered samples, beside the filtering.

I can only get 4 running! On the 5th one the audio engine stops :(

I’m on OSx 10.9.1

2.8 Ghz, 4GB ram

Something clearly not right there, I getter performance on my iPad… Might as well stick to VSTi’s for now

Nice work Bit_arts, sounds good. Won’t even attempt to load more then one…