Jumping CPU Meter, how to avoid? I'd like to have it rather constant

Day 2 with Dwarf. I just recorded a small songidea with LP3 and had my guitar running through Compressor, EQs, Drop, & IR loader. I am very happy with that and I’m a bit surprised, that I am really happy with the audio input quality of Dwarf. It is just what I expect from such a device.

I ran into problems with the CPU load (of course) & what really annoys me is, that CPU Meter jumps around and sometimes Dwarf has dropouts. After enabling that experimental Jack Manager it stopped jumping and was very reliable. But it again changed shortly after… In most cases I would prefer that to dynamic CPU distribution causing dropouts in certain situations.
What are the settings, that make Dwarf most reliable on 128 frames buffer? For me it makes ratrher problems, when CPU goes down while not playing guitar. That jumping CPU meter seems to cause glitches :frowning:

2 Likes

We know of at least 1 source of issues that cause this, but do not have a reliable fix yet.
The SoM used by the Dwarf has a little issue when it comes to NEON optimizations and the amount of time they take, some very specific set of instructions seem to cause unrelated tasks on the CPU to wait which is bad for realtime audio.
Once we have it resolved we will push the fix as an update.

If you have a pedalboard where the cpu load varies quite significantly, would be great if you could share it. We can add it as part of the fix validation step to ensure the situation improves.

8 Likes

If it helps investigate, I’ve noticed this issue with the MOD Convolution Reverb plugin. My CPU load was generally between 60% and 70% and with some of the IR, there were sudden peaks with a click (I assume, these were xruns).

3 Likes

+1 for maybe Convolution reverb being a reason… I will investigate further…

4 Likes

@falkTX Gaffa shiro seems to be jumping :frowning:

2 Likes

@falkTX Hmmm, are all/many delays jumping? Dub3 also… but less often…

1 Like

Sooo difficult. Maybe it is the combination of Convolution loader with others. Without convolution loader this doesn’t jump.

1 Like

I use Gaffa and haven’t experienced this. However, I’m not currently using any of the convolution reverbs. I’m using Shiroverb MK II, Triple Chorus, Gaffa, Stereo Echo, and LP3. My CPU ranges from 38%-41%.

2 Likes

You’re right. It seems to be combinations. In the above test 4x Gaffa do not jump… But with convolution loaeder…

2 Likes

I’ll throw in my own experience here. I’ve got 2 IR Loaders + a single instance of Gaffa and I don’t see CPU jumps. It fluctuates between 60-62% for this pedalboard.

2 Likes

@malfunction54 Could you share it? I would like to test it with my dwarf…

1 Like

unfortunately, the amp sim was built locally on my system. I can put in another amp sim and publish that one.

Update: Here’s the modified pedalboard

@malfunction54 I can easily get random CPU jumpes 20% from 69% up to 90% when enabling Gaffa, cabeling stereo and adding a LP3 to your project :-(. Yes, the project as you send it is stable.

1 Like

@malfunction54 I set the latency to 256 and was able to run 6 convolution devices along with the other ingredients of your poject. With the 6th convolution device CPU arbitrarily jumps up to 15%. while with 5 it seemed stable…

1 Like

A few things here:

  • enabling/bypassing a plugin shouldn’t affect CPU (well, really DSP) usage. Once you’ve added it to your pedalboard, it’s using DSP time. Connecting the plugins also may increase CPU usage.

  • I added LP3 to my pedalboard and saw periodic spikes in CPU usage, eventually causing xruns, but not much

  • I loaded your original pedalboard and saw the behavior you described in the original post

  • I removed the LP3 from your pedalboard and the CPU usage stabilized around 62%

  • I added a total of 4 Gaffas to my board and connecting them raised my CPU to 100% (probably more)

  • backing down to 2 Gaffas on my board put the CPU at 67%, but it fluctuates regularly to 100%

I think you just need to pare down the plugins, or find plugins that consume less CPU. Or, run at 256 frames if you can tolerate the latency. But, YMMV and this is just one person’s observation.

EDIT: I’m at under 70% without jumps now with a basic working very nice project. So I can still add effects on my non violin channel :-).

@looperlative Yes, like malfunction54 described. I optimised where possible (x42 convoluton device reduced load and I tested all reverbs and echoes and found a compromise to have both on board, I turned off all unnecessary processing like Noisegate & Compressor & sync…), and it seems that LP3 EDIT: LP3 & Gaffa in combination really spike the DSP.

I have 3 LP3s in that project (but that makes no diffrence to 1) and without spikes/LP3 it would settle at below 70%, but with the spikes I get xruns and crackles. It’s only once in 30sec/1minute, but it kills some fun. It’s allways the same: I’m sooo close to having that workspace perfect and some weired problem makes it hard to use it fearless or smooth. It’s really so close & I tried 256 latency and it is not so much fun, because of that noticable delay. To my surprise I’m quite satisfied with 128 latency… ah, and the spikes are also there with 256, but the higher buffer handles them with less problems.
I would make videos/further tests, if that helps…

… one thing: strange, it only happens while playing the instrument. not while just letting the project work on its own…

ok, maybe I reduced the spikes heavily by deactivating Gaffa, I didn’t delete it, just turned it off. Still testing. So I was wrong, it is echoes & LP3 together, Gaffa & LP3 in combination? Some cache issue?

2 Likes

It is possible that it isn’t a CPU issue. The crackling could be a situation where the audio is overdriving at some point. I assume that this occurs when there is looping audio? With looping and delays, you could have points in time when your total audio level is too high.

2 Likes

BTW, try using the Meter plugin on the output. I find that if I exceed 0.0dB at the output that I get clicking. Look at the held level to see what maximum it reaches.

1 Like

@looperlative No, that’s not the problem.
The audio dropouts (also shown as xruns) appear when DSP Meter ‘jumps’ up. Jumps/Spikes happen means DSP usage suddenly raises from lets say 70% to 95% without adding new modules and then going down to 70% again, this has been confirmed by mod audio. There are spikes when DSP jumps into red and then xruns happen. I bet this has something to do with cache management, because all plugins which are in combination leading to the DSP spikes handle cache to an extreme point: convolution/delay/Looper. I found that spikes happen e.g. when LP3 handles an undo. For now I’m satisfied with the solutions I found, so that avoiding mod convolution loader (now using the x42 one) and avoiding gaffa (which is just problematic in combination with LP3) gives me a stable DSP Meter without high spikes.

Of ours for the future it would make sense to take a look at these clear problems,which were also confirmed by mod audio, so I guess in future we all benefit from steps to solutions in that direction.

3 Likes

So, I was noticing it happen tonight. There was a difference in my setup. I normally don’t leave the USB cable connected, but tonight I had it connected. I was getting CPU glitches and the XRUN count went up. I disconnected the USB cable and the problem went away. I suspect Linux is at fault here. I have had problems with poorly behaved Linux drivers in the past. I suspect that we are seeing one now. BTW, I don’t see this with the UI connected via Bluetooth.

1 Like