Old 04-02-2019, 01:25 PM   #1
babag
Human being with feelings
 
Join Date: Nov 2009
Posts: 1,648
Default question about item fx

what's the difference between how item fx are handled in windows and how they are handled in linux? i asked more generally about item fx a while back and jack mentioned something about caching data or something.

reason i ask is that, for smaller things, item fx (my normal workflow) seem fine. i tried to open a large project that had been done in windows 10 on the same computer, though, and it wouldn't even open. it had LOTS of item fx. (all cockos fx, btw.)

i went back to windows, made a duplicate of the project, and deleted a lot of things from it, and it opened fine in reaper for linux. that experience prompts me to wonder what the difference is in how reaper for linux is handling item fx. not being able to get past this has pretty much brought me to a standstill.

thanks,
babag
babag is offline   Reply With Quote
Old 04-02-2019, 04:27 PM   #2
Glennbo
Human being with feelings
 
Glennbo's Avatar
 
Join Date: Mar 2008
Location: Planet Earth
Posts: 3,904
Default

Just last night I brought over one of my most demanding projects from Windows, making a copy of it to mess with in Linux.

The project loaded, but threw errors on two plugins I don't have setup in Linux. All the others loaded and there were a lot of them. Big Superior Drummer 2 drumkit, Kontakt grand piano, sax section, trumpet section, trombones, strings, Etc., the song played OK, but one by one I replaced all the Windows FX with native Linux ones, Superior Drummer and Kontakt excluded.

The project uses a lot less CPU now that I don't have 50+ Windows plugins running in WINE and being bridged by LinVST.
__________________
Glennbo
Hear My Music - Click Me!!!
--
Glennbo is offline   Reply With Quote
Old 04-03-2019, 01:01 PM   #3
Jack Winter
Human being with feelings
 
Jack Winter's Avatar
 
Join Date: Aug 2007
Location: Luxembourg/Spain
Posts: 1,784
Default

I think it's a question of efficiency of running the DSP, ram usage, and the load time. No matter how wonderful it is to be able to use Windows VSTs on Linux using LinVst, there is still a penalty in doing so..

Possibly this could be fixed, but IMO for various reasons it would need to be done by reaper itself, or rather a plugin host offering offering some special features for reaper to use.

You'd want things like zero copy of data, no context switches, etc (at least for the DSP part).
__________________
Reaper for Linux Documentation (WIP). Software: Archlinux/KDE, Fabfilter FX, Komplete 8, Nebula, Schwa/Stillwell, T-racks Max/Amplitube/SVX, etc. Gear: i7-2600k/4700HQ/16GB, RME Multiface/Babyface, Behringer X32, Genelec 8040,etc. :)
Jack Winter is offline   Reply With Quote
Old 04-06-2019, 02:06 PM   #4
babag
Human being with feelings
 
Join Date: Nov 2009
Posts: 1,648
Default

i'm not sure if this is you guys talking amongst yourselves or if it's aimed at my question. should i be getting from this that i should go through the project and replace the instances of cockos reaverb and cockos reaeq with native linux versions of said plugins? that woud be hard since the project doesn't open unless i break it into smaller pieces. very frustrating.

thanks for any clarification,
babag
babag is offline   Reply With Quote
Old 04-06-2019, 04:26 PM   #5
Glennbo
Human being with feelings
 
Glennbo's Avatar
 
Join Date: Mar 2008
Location: Planet Earth
Posts: 3,904
Default

I can still open the original project I referenced that was done in Windows with all Windows plugins, and it plays OK if I increase my audio buffer to 512 samples. Normally I run my machine at 128 samples.

With 94 FX on 25 tracks including Superior Drummer and a lot of Kontakt instruments the difference I'm seeing before and after swapping out most of the FX to native Linux replacements was this.

Playing the original file with 94 mostly Windows FX = 54.36% CPU use.
Playing the modified file with 94 mostly Linux FX = 30.59% CPU use.

Takeaway result is you could leave projects as is with Windows FX, and unless there are a ton of them, probably be fine, but there will be higher CPU use running Windows plugins in WINE bridging them with LinVST vs using native Linux plugins.
__________________
Glennbo
Hear My Music - Click Me!!!
--
Glennbo is offline   Reply With Quote
Old 04-06-2019, 04:28 PM   #6
Glennbo
Human being with feelings
 
Glennbo's Avatar
 
Join Date: Mar 2008
Location: Planet Earth
Posts: 3,904
Default

Quote:
Originally Posted by babag View Post
i'm not sure if this is you guys talking amongst yourselves or if it's aimed at my question. should i be getting from this that i should go through the project and replace the instances of cockos reaverb and cockos reaeq with native linux versions of said plugins? that woud be hard since the project doesn't open unless i break it into smaller pieces. very frustrating.

thanks for any clarification,
babag
Any native REAPER FX are going to automatically be the ones that came with the Linux version of REAPER, even if you load a project that was originally done in Windows, including projects with item FX.
__________________
Glennbo
Hear My Music - Click Me!!!
--
Glennbo is offline   Reply With Quote
Old 04-08-2019, 01:43 AM   #7
Jack Winter
Human being with feelings
 
Jack Winter's Avatar
 
Join Date: Aug 2007
Location: Luxembourg/Spain
Posts: 1,784
Default

Quote:
Originally Posted by babag View Post
i'm not sure if this is you guys talking amongst yourselves or if it's aimed at my question. should i be getting from this that i should go through the project and replace the instances of cockos reaverb and cockos reaeq with native linux versions of said plugins? that woud be hard since the project doesn't open unless i break it into smaller pieces. very frustrating.

thanks for any clarification,
babag
Ah, we are talking about item FX with the reaper plugins performing worse on linux compared to windows? If so forget what I said about it being an issue with LinVst and using windows plugins..! As stated above, reaeq would use the windows version on windows and the linux version on linux, no matter what OS the prj was created on.

This would appear to be a bug and worth reporting, maybe something can be done to speed up item FX on linux.

Edit: Indeed you even specified that it was cockos FX in the OP. Sorry for the confusion. I'd report this as a bug, and attach a prj file that shows the problem (no need for the audio files). Alternatively email cockos the project.
__________________
Reaper for Linux Documentation (WIP). Software: Archlinux/KDE, Fabfilter FX, Komplete 8, Nebula, Schwa/Stillwell, T-racks Max/Amplitube/SVX, etc. Gear: i7-2600k/4700HQ/16GB, RME Multiface/Babyface, Behringer X32, Genelec 8040,etc. :)

Last edited by Jack Winter; 04-08-2019 at 01:49 AM.
Jack Winter is offline   Reply With Quote
Old 04-08-2019, 09:50 AM   #8
babag
Human being with feelings
 
Join Date: Nov 2009
Posts: 1,648
Default

thanks! will do.
babag is offline   Reply With Quote
Old 04-11-2019, 10:08 AM   #9
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 12,427
Default

Yep, what jack said -- post a project that uses all Cockos plug-ins/JSFX, and that works in Windows but not in Linux, and we'll have a look! No need to post the media, just the .rpp file should be sufficient...
Justin is offline   Reply With Quote
Old 04-13-2019, 03:17 PM   #10
babag
Human being with feelings
 
Join Date: Nov 2009
Posts: 1,648
Default

Just posted this to the bug reports forum:

https://forum.cockos.com/showthread....41#post2121441

thanks,
BabaG
babag is offline   Reply With Quote
Old 04-14-2019, 11:36 AM   #11
babag
Human being with feelings
 
Join Date: Nov 2009
Posts: 1,648
Default

may be zeroing in on something. posted details in bug reports about reasurround seeming to be the culprit here.

babag
babag is offline   Reply With Quote
Old 04-17-2019, 08:52 PM   #12
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 12,427
Default

Thanks! I finally duplicated some higher-than-it-should-be CPU use when stopped, seems the code handling automated parameters was sending notifications way, way too often to the control surface side of things, and lock contention was causing the whole thing to slow down. Fixing the excess sending of notifications, and also making it not bother when no control surfaces are enabled (will keep an eye on it to see if we can reduce the lock contention, too).

Some improvements will be in the next +dev build, hopefully you can test that and see if it improves things.
Justin is offline   Reply With Quote
Old 04-18-2019, 05:04 AM   #13
osxmidi
Human being with feelings
 
Join Date: Feb 2014
Posts: 536
Default

I've got a Linux version of LinVst on a github branch where a Linux vst can be loaded and run under LinVst and it has the same forking a child process and context switches etc as the LinVst Wine vst version does.

So a rough comparison can be made about overheads between Wine run vst's run under LinVst and native Linux vst's run under LinVst and also a comparison between native Linux vst's run under LinVst and Linux native vst's running as usual with no LinVst in sight.

The overheads seem to be coming mostly from Wine and not that much of the overhead seems to be coming from LinVst's context switches or futex signalling or shared memory as far as I can make out but LinVst would have some overhead.

Wine has to translate all the Windows visual stuff through who knows how many libraries and run the floating point code etc and I'm not sure what priorities they are using for all of that (I'm not talking about wineserver priorities) but I suspect that they play it safe.

I'm not an expert on Wine internals so I'm just speculating but it's no real surprise that Wine would have overheads and it's a wonder it works as well as it does in many cases or that it works at all.

Last edited by osxmidi; 04-18-2019 at 05:34 AM.
osxmidi is offline   Reply With Quote
Old 04-18-2019, 11:50 AM   #14
babag
Human being with feelings
 
Join Date: Nov 2009
Posts: 1,648
Default

i've been asked to send support a zip file of ".core" after i get a hang on loading but haven't been able to find .core. i'm on kubuntu 18.04 with kx studio repositories and run reaper from /opt/REAPER/. anyone know where .core is on a system like this?

thanks,
babag
babag is offline   Reply With Quote
Old 04-21-2019, 11:52 AM   #15
babag
Human being with feelings
 
Join Date: Nov 2009
Posts: 1,648
Default

kubuntu seems to dump the core to /var/crash and not name it .core but, rather, with the command that caused the crash. in my case that would be "_opt_REAPER_reaper" instead of .core.
babag is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 06:02 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.