renoise using too much cpu

Hi ,

Just trying out renoise on linux mint debian edition . So I play the demo track Dblue- syntechtic sugar.Gradually the cpu goes through the roof and I get a “The audio engine was stopped because it used too much CPU for a quite long time” message .

OS: LMDE 64bit
CPU: AMD Athlon II X2 250
RAM: 8 G
connected to a Alesis io2 external USB audio card using Jack .

I’ve messed about with jack (latency etc) but the cpu still sky rockets .

Any suggestions please ?

Hi,

A similar problem goes away on Ubuntu after you install indicator-cpufreq, then change the CPU from “Ondemand” to “Performance” for the duration of the Renoise session.

It has to do with the way Renoise aggressively does cpu cycle conservation ramping; too fast for the OS to catch before switching between modes.

I imagine this is a wrapper to some other command line (or gnome) app. Maybe there is an equivilant on Debian?

Regards,

Thanks for that I will search around and see if I can find something similar for Debian

I installed a cpu freq app and it’s certainly made a big difference selecting performance mode .However it still seems on the high end using up to 40% cpu whilst playing the aforementioned demo track .
I tried the same song on win7 (same machine etc ) and it was averaging approx 10% cpu ,thus for whatever reason linux isn’t being very efficient .shame as I want to ditch windows ideally .
Is their a ‘freeze’ track type of feature in renoise ?

Generally, to decrease cpu usage you may:

-Disable some unnecessary filters in your project (they use quite much cpu)
-Reverbs (they’re consuming much cpu too)
-Freeze some tracks (mentioned above)
-Render plugins to instrument (that also helps)
-Disable Autoseek (if not really needed, this one eats much cpu as i noted)

Does Renoise have realtime priority?

As root, try this in a term window:

setcap cap_ipc_lock,cap_sys_nice=ep `which renoise`  

If you don’t have the renoise executable in your path, replace which renoise (including the backquotes) with wherever it is - this will grant realtime priority to Renoise.
It’s a little bit of unix “wizardry”, but you only need to do this once after installing it. =)

Thanks for the advice :slight_smile: .

Though I’m not sure I’m doing the above correctly . I go to my renoise folder where the executable file is. I then open a terminal which shows that I am in that folder . I’ve tried typing “setcap cap_ipc_lock,cap_sys_nice=ep” and get this message

usage: setcap [-q] [-v] (-r|-|<caps>) <filename> [... (-r|-|<capsn>) <filenamen>]<br>
<br>
<br>
<br>
 Note <filename> must be a regular (non-symlink) file.<br>```

<br>
<br>
I've also tried typing in 

```<br>setcap cap_ipc_lock,cap_sys_nice=ep `renoise`<br>```

 <br>
<br>
As I've set the excutable name to simply renoise . And then I get <br>
<br>

```<br>Note <filename> must be a regular (non-symlink) file.<br>
<br>```

<br>
<br>
I'm guessing this is the same as setting renoise manually to 'very high priority' by using my system monitor app .Though when I check out renoise's priority using the system monitor it is still set to normal.</filename></filename></filenamen></capsn></filename></caps>

[quote=“Bio-Rhythm, post:7, topic:39390”]
As I’ve set the excutable name to simply renoise . And then I get

Note <filename> must be a regular (non-symlink) file.<br>
<br>```

<br>[/quote]<br>
<br>
This means you have to really type in the full path to where Renoise actually is installed. The symlink (or if you need the windows phrase: "Shortcut") of Renoise is apparently present in the system path, but not the real location.</filename>

now I’m confused .I’ve opened the terminal window & cd to the correct directory ( where I extracted the renoise package and there is the executable (application/x-executable file renoise )

but when I type in setcap cap_ipc_lock,cap_sys_nice=ep >> I’m told Note must be a regular (non-symlink) file.

The renoise file is not a shortcut?.I’ve searched my system and this is the only renoise executable file !

Ok then how do I find this ‘regular non system link file?’

Thanks for the help guys :slight_smile:

Yes, i felt for this problem multiple times myself…
I needed to restart apache2 and the restart script is in /etc/init.d/apache2.
So cd’ed there, did “apache2 -k restart” and it kept popping up the help for apache.
Then i did a “./apache2 -k restart” and that did the trick.
Full path really means typing the full path, one way or another, if you CD into it, then never forget to ./ in front of it to let Linux know it should really look in the current path, else it will still take the global symlink prior to anything else.

If the full path or dot-slash trick doesn’t work, then i will be in dubio myself…

Do ls -l on the symlink to see where it points. On my system, the full path to the file is /usr/renoise/rns_2_8_1_reg_x86/renoise (for the registered version) … /usr/renoise is where i decided to extract the archive, and rns_2_8_1_reg_x86 is the directory created by extracting it.

So to “setcap” renoise for realtime priority, i could either do:

setcap cap_ipc_lock,cap_sys_nice=ep /usr/renoise/rns_2_8_1_reg_x86/renoise  

-or-

cd /usr/renoise/rns_2_8_1_reg_x86  
setcap cap_ipc_lock,cap_sys_nice=ep renoise  

-or-

cd /usr  
cd renoise  
cd rns_2_8_1_reg_x86  
setcap cap_ipc_lock,cap_sys_nice=ep renoise  

etc, etc…

Sorry about my earlier post with which renoise …i didn’t remember setcap refuses to operate on symlinks :wacko:/>/> :D/>/>

(another hint: you can select stuff in your term window and middle-click to paste, so long file/directory names aren’t a problem)
(another other hint: in command line, the TAB key is your friend <_</>/> )

…anyway, if you have dir_colors in your shell (or use ls --color) then “ls” should show the executable file name in black on red background by default.

Ok thanks guys. I’ll try some of the above shortly .

How do I know if the above worked ?.

mkay… first open a terminal window and type: ```
ls -l /usr/local/bin/renoise

  
You'll see info about /usr/local/bin/renoise, something that starts with a bunch of letters and dashes, like "lrwxr-xr-x" ....can you paste the whole output here? If /usr/local/bin/renoise doesn't work (no such file) then try /usr/bin/renoise. (without the "local")  
  
What we're interested in is the rightmost part of this information, after the -> sign (nice ascii-art arrow). That's the path to your renoise executable. You can resize your term window if the output splits on two lines, or in most terminal programs you can just select it as-is across multiple lines.  
  
(sorry, i very rarely use graphical interfaces for file managing stuff)  
  
  
/* edit */ Hey wait a minute, renoise gives a warning about realtime priority if it can't obtain it, right? At least, if the option is turned on in the preferences -> audio -> device settings.... so if that option is on, and you don't get a warning window when you start renoise, that means it's already getting realtime priority, and you can ignore this whole mumbo jumbo about setcap. If that option is disabled, then you really should enable it.

Do you mean realtime audio cpu’s ? that’s the only option for real time under preferences/device settings

This setting:

If it’s set to ON, and the renoise executable doesn’t have realtime rights (ie. with setcap) you get this warning when you start renoise: