Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER for Linux

Reply
 
Thread Tools Display Modes
Old 06-24-2020, 09:09 AM   #41
nspa
Human being with feelings
 
Join Date: Jun 2020
Posts: 14
Default

Quote:
Originally Posted by osxmidi View Post
Well, I think wine needs a lot done to it.

d2d1 is one of them and xembed is another.

Also threads and futexes.
there's a patch floating around for xembed. my build uses futexes and pi_futexes. that's what fsync is.

Quote:
Originally Posted by osxmidi View Post
There is Wine Staging esync and Wine Staging tkg https://github.com/Kron4ek/Wine-Builds/releases with wineserver mods but I couldn't notice that much difference, maybe a 5% difference or something like that.
esync leaks resources with some apps - you can exhaust file descriptors on your system, it's untenable. It's exactly why i am using fsync (it doesn't have that problem and it's faster)... It's also why i have code that allows the fsync threads to be RT - as that makes a big difference in performance / stability.

I've seen that git repo - nothing of interest for me in there.

Quote:
Originally Posted by osxmidi View Post
I think it should have been done by now by the main Wine devs that understand the Wine internals and work with them everyday, and Wine Staging esync was done by the main Wine staging dev.

But, if someone else understands the Wine internals, then go for it.
Yeah, he works for codeweavers. I've been in direct contact with him, recently.

Code doesn't write itself - wine is tricky and i think your expectations of wine developers and codeweavers is unrealistic.

Quote:
Originally Posted by osxmidi View Post
There is also an instance problem with Wine where more instances slow performance and that's probably Wines thread priorities etc.
I've explained why this is, in this thread already.

Quote:
Originally Posted by osxmidi View Post
Also believe it or not, The gpu/drivers can have an effect on Wines performance and Wines video diplay can drag down performance on older cards like on my old core 2 testing laptop for instance.
who cares? lol.

Quote:
Originally Posted by osxmidi View Post
I was testing Kontakt (on my i7 system) with a large Piano library that I forget the name of and it was spiking to 100% in a periodic sort of way and it turned out that my system rt priorities were not setup and after that the spiking stopped.

Also, what are the cpus that are being used,

An i7 is a different case to a Core Duo.
It sounds like you might be talking about The Giant Piano Library.

I don't get spikes like that. That's a synchronization and thread priority issue -- and you didn't push Kontakt hard enough to determine that using the staging RT patch actually fixed the problem (hint: it doesn't, not under any real load. that patch doesn't set the correct threads as RT - Kontakt's high priority threads run as SCHED_OTHER, so it's no surprise that it runs badly, under those conditions). Running one instrument doesn't say much, does it? try running heavy multi-instruments, then get back to me.

my system is an AMD Ryzen 5 3500U (Lenevo IdeaPad 14 2-in-1). modest CPU, just a mobile quadcore. nothing fancy. The only fancy part is that I upgraded the M.2 SSD + RAM... my audio interface is a ZOOM U-44 (also nothing fancy).

Quote:
Originally Posted by osxmidi View Post
When the cpu load starts hitting around say 40% then it might interfere with the audio buffer filling speed and therefore spikes and xruns and stuttering might occur.
nah. I can run Kontakt with heavy multi-instruments and i won't get xruns until > 90% DSP load in Jack... You shouldn't be getting xruns in any situation with 40% utilization, at least not with any native linuxaudio apps and not with a proper build of wine, either. (assuming your system is actually configured properly)

Currently, the only time i get xruns is when i first launch some VSTs (fairly normal) and just after startup -- but I'm fairly certain why that is. I should avoid setting RT priorities from wineserver. As i've observed my apps threading in htop and that seems to be the issue. -- I think once I resolve that - I won't see those xruns anymore.

Last edited by nspa; 06-24-2020 at 09:17 AM.
nspa is offline   Reply With Quote
Old 06-24-2020, 09:25 AM   #42
JamesPeters
Human being with feelings
 
JamesPeters's Avatar
 
Join Date: Aug 2011
Location: Near a big lake
Posts: 3,105
Default

Quote:
Originally Posted by Soli Deo Gloria View Post
Besides, there is a serious, underlying problem with Linux : almost 30 years onwards from its conception, there still seems to be a certain - unconscious? - delight in difficulty just for the sake of it. It always puzzles me that for every simple question on Linux forums, you find on many occasions a hard time finding a straightforward solution. The console-centric paradigm seems to be some kind of - unconscious? - gate-keeping to keep "forever" things as they are : a little, little niche in the desktop computing world.
It does seem that way to me too sometimes, but my perspective has changed after using it for a while. The sheer number of distros alone points toward why it's different from other OSes.

Console/terminal is the most basic and common way to do things among all distros. Because of that, providing advice which involves using terminal commands makes the most sense...in a way. It's more likely that the results will be achieved without having to ask more questions such as "what file manager are you using" and then explaining what options need to be enabled, all the steps involved in changing ownership of files (and so on). For that matter people use different software/package managers. Looking at Ubuntu and its official variants (20.04) is a good example: their own "Ubuntu Software" app has been removed and now in its place is "Snap Store" which tries to force Snap versions and obscure the source of packages. So I understand why all the apparent love for terminal, even though my general opinion is "clicking is better than typing". I take the advice which is given as terminal commands, then learn what those commands are/what they do, and proceed as I decide (sometimes opening a sudo version of a graphical text editor...GASP!!!)

Then there's the thought of what Linux is. This isn't something that's maintained by a single company. A lot of the code is coming from volunteers around the globe who have varying opinions of what Linux should be. Expecting that Linux in general is going to "just" become something like Windows would mean a more closed development approach with a narrower focus. I expect it's possible for a certain distro to become like this, but even so the maintainer would need to be willing to take the time to sculpt something that's very "open" into something very comprehensively focused. I'd assume by that point it wouldn't be "Linux" anymore, perhaps more like MacOS in a sense.

These things (and probably more) tend to make Linux a different kind of OS.
__________________
Using REAPER for Linux on Mint XFCE 20
Free multi-layered drum bank
JamesPeters is offline   Reply With Quote
Old 06-24-2020, 11:27 AM   #43
Glennbo
Human being with feelings
 
Glennbo's Avatar
 
Join Date: Mar 2008
Location: Planet Earth
Posts: 4,683
Default

Quote:
Originally Posted by JamesPeters View Post
I take the advice which is given as terminal commands, then learn what those commands are/what they do, and proceed as I decide (sometimes opening a sudo version of a graphical text editor...GASP!!!)
Hehe, I setup a hot key for "God Mode" GUI based file browsing.
__________________
Glennbo
Hear My Music - Click Me!!!
--
Glennbo is offline   Reply With Quote
Old 06-24-2020, 01:09 PM   #44
4duhwinnn
Human being with feelings
 
Join Date: Mar 2017
Posts: 490
Default

Quote:
Originally Posted by nspa View Post
who cares? lol.
It's important to have a frame of reference for performance
on older/different systems. And it's important to recognize
the role of video cards displaying complex gui's in linux,
and in wine setups. I think almost everbody making music in linux
cares a lot about pre i9 performance.
mi dos centavos
4duhwinnn is offline   Reply With Quote
Old 06-24-2020, 08:17 PM   #45
osxmidi
Human being with feelings
 
Join Date: Feb 2014
Posts: 581
Default

Quote:
Originally Posted by nspa View Post
there's a patch floating around for xembed. my build uses futexes and pi_futexes. that's what fsync is.



esync leaks resources with some apps - you can exhaust file descriptors on your system, it's untenable. It's exactly why i am using fsync (it doesn't have that problem and it's faster)... It's also why i have code that allows the fsync threads to be RT - as that makes a big difference in performance / stability.

I've seen that git repo - nothing of interest for me in there.



Yeah, he works for codeweavers. I've been in direct contact with him, recently.

Code doesn't write itself - wine is tricky and i think your expectations of wine developers and codeweavers is unrealistic.



I've explained why this is, in this thread already.



who cares? lol.



It sounds like you might be talking about The Giant Piano Library.

I don't get spikes like that. That's a synchronization and thread priority issue -- and you didn't push Kontakt hard enough to determine that using the staging RT patch actually fixed the problem (hint: it doesn't, not under any real load. that patch doesn't set the correct threads as RT - Kontakt's high priority threads run as SCHED_OTHER, so it's no surprise that it runs badly, under those conditions). Running one instrument doesn't say much, does it? try running heavy multi-instruments, then get back to me.

my system is an AMD Ryzen 5 3500U (Lenevo IdeaPad 14 2-in-1). modest CPU, just a mobile quadcore. nothing fancy. The only fancy part is that I upgraded the M.2 SSD + RAM... my audio interface is a ZOOM U-44 (also nothing fancy).



nah. I can run Kontakt with heavy multi-instruments and i won't get xruns until > 90% DSP load in Jack... You shouldn't be getting xruns in any situation with 40% utilization, at least not with any native linuxaudio apps and not with a proper build of wine, either. (assuming your system is actually configured properly)

Currently, the only time i get xruns is when i first launch some VSTs (fairly normal) and just after startup -- but I'm fairly certain why that is. I should avoid setting RT priorities from wineserver. As i've observed my apps threading in htop and that seems to be the issue. -- I think once I resolve that - I won't see those xruns anymore.
I test using core duo's up to i7's.

I meant around 40% with rt not being set up on my system and then getting 100% spikes.

I went to one of my other systems and I didn't get the 100% spikes.

Also 40% on a core duo is not really 40% on an i7, different variables.

I also found out that Kontakt 5 seemed to perform better than Kontakt 6 under Wine.

I'm all for any wine improvements coming from whoever.

If the improvements are patches from outside Wine, then will they be maintained for Wine 6, Wine7 etc etc, a lot of things have fallen by the wayside in Linux.

The main Wine Staging dev is trying to improve some bottlenecks and that's about all I know.
osxmidi is offline   Reply With Quote
Old 06-24-2020, 08:39 PM   #46
osxmidi
Human being with feelings
 
Join Date: Feb 2014
Posts: 581
Default

Quote:
Originally Posted by Soli Deo Gloria View Post
This is exactly my situation with an I7-3770k from 2013, which I have loaded with 40+ Kontakt track projects many times on Windows 7, with hundreds of FXs. While being a relatively "old" machine for the current standards in the US and Europe (it's always strange to me that in this computational world, "old" can be applied to such short periods of time), I see in Reaper's performance meter that I have many, many resources available but the spikes do occur the same in that periodic fashion you observe with Wine. Up to now, I have been bridging everything with Linvst, but I agree that the real bottleneck seems to be Wine.








Well, I'll be taking a look at Manjaro, and see if I can install it and get used to its basics alongside my current Ubuntu Studio install (with which I already feel comfortable). If I see that it's viable to have both systems installed on my main machine, I'd like to beta-test your development, really. In that case, if you don't mind, I'll go on via private message. As time goes by, if things turn out well, all the experience gained with all of this will be reflected in the first posts of this thread, which I plan as a kind of easy (well, "easy") summary of Linux audio optimizations.






I agree, and as osxmidi comments, wine devs have strangely missed the focus on this most important topic. Besides, there is a serious, underlying problem with Linux : almost 30 years onwards from its conception, there still seems to be a certain - unconscious? - delight in difficulty just for the sake of it. It always puzzles me that for every simple question on Linux forums, you find on many occasions a hard time finding a straightforward solution. The console-centric paradigm seems to be some kind of - unconscious? - gate-keeping to keep "forever" things as they are : a little, little niche in the desktop computing world. Forgive me about this, but although many technical explanations can be given about Linux's ways, I always get the gate-keeping impression in the end. After all, Linux rules the world with Internet servers, supercomputers and even somehow via Android on the smartphone realm. So, let them keep the desktop field private, to put it somehow...



Maybe in the future, as more and more newbies like me keep entering, little by little, there is a tiny, almost microscopic hope of a really friendly Linux environment. If they iron out all the bugs of Snap and the likes, maybe it will also be a step in that direction. But, in my case, as I profoundly dislike the direction Microsoft is taking with Windows 10, here I am... Apple is not an option for me here in Argentina, and I don't really expect a truly easy Linux experience, at least in my lifetime. Nevertheless, here comes my support to the Linux project, always reckoning that things could - and should - be way, way easier.



Sorry for the rant mode; it was a little relief after all these geeky times with Ubuntu Studio. Now, let's continue working...


I remember having the same Kontakt 6 100% spiking problems on one of my i7 systems using Manjaro I think, and after I worked it out (I didn't have rt setup) I put up a guide at the LinVst github page https://github.com/osxmidi/LinVst/tr...e-Audio-Config

That config is from using Mint years ago by the way and it might not be the greatest around but it worked.

That was for one instance of a large Piano library using Kontakt 6, I don't know if it's the same problem that you have, and I also remember playing around with Reapers cpu threads (and maybe Kontakt's as well) but I can't remember exactly what I did or didn't do.

Do a search for "Kontakt 100% spiking" and there are some Windows and Mac users having the problem.

For Windows vsts there are some things missing from Wine.

A fair amount of more recent plugins use d2d1 and d2d1 development on Wine is very sloooooooooooooooooooooow.

There is also Powershell that's missing.

XEmbed is broken which makes plugin window embedding not function properly, and Wine won't accept some possible patches for it, but there are ways around XEmbed.

There are other things, some of which have been brought up in this thread, rt performance etc.

But, Wine is not Windows and never will be, and what runs, runs, and improvements do happen over time.

Last edited by osxmidi; 06-24-2020 at 08:57 PM.
osxmidi is offline   Reply With Quote
Old 06-24-2020, 10:07 PM   #47
nspa
Human being with feelings
 
Join Date: Jun 2020
Posts: 14
Thumbs up

Quote:
Originally Posted by Soli Deo Gloria View Post
This is exactly my situation with an I7-3770k from 2013, which I have loaded with 40+ Kontakt track projects many times on Windows 7, with hundreds of FXs. While being a relatively "old" machine for the current standards in the US and Europe (it's always strange to me that in this computational world, "old" can be applied to such short periods of time), I see in Reaper's performance meter that I have many, many resources available but the spikes do occur the same in that periodic fashion you observe with Wine. Up to now, I have been bridging everything with Linvst, but I agree that the real bottleneck seems to be Wine.
yeah, of course wine is the bottleneck. it makes sense that would be the case though. Obviously, the windows version of Kontakt is written for windows, designed to leverage what that OS provides. Wine, as amazing as it is in some ways -- does have it's limitations.

While i think it's quite possible to work around many things to get better performance and stability. I find it doubtful, that it would match Windows performance for our use case (which in some ways, has far more stringent requirements than say, gamers needs).

also, you should try yabridge - i like it better than Linvst. it seems pretty solid. kind of does a few things different (in it's implementation) than some of the other bridges.

Quote:
Originally Posted by Soli Deo Gloria View Post
Well, I'll be taking a look at Manjaro, and see if I can install it and get used to its basics alongside my current Ubuntu Studio install (with which I already feel comfortable). If I see that it's viable to have both systems installed on my main machine, I'd like to beta-test your development, really. In that case, if you don't mind, I'll go on via private message. As time goes by, if things turn out well, all the experience gained with all of this will be reflected in the first posts of this thread, which I plan as a kind of easy (well, "easy") summary of Linux audio optimizations.
I've never used Manjaro, but a lot of people do seem to like it... I imagine if i was a new to linux today, I would probably use it... But i started using linux years ago. -- I used Fedora mostly for a few years, but distro hopped a bit too -- ultimately, at some point i was using ArchWiki all of the time for help (despite not using Arch). I also didn't like working with rpms (or deb, for that matter), so I was pretty drawn to Archlinux' build system, package management and the AUR... so i jumped ship. ;-)

obviously, Manjaro being Arch-based - it's users reap all of this stuff too.

Quote:
Originally Posted by Soli Deo Gloria View Post
I agree, and as osxmidi comments, wine devs have strangely missed the focus on this most important topic. Besides, there is a serious, underlying problem with Linux : almost 30 years onwards from its conception, there still seems to be a certain - unconscious? - delight in difficulty just for the sake of it. It always puzzles me that for every simple question on Linux forums, you find on many occasions a hard time finding a straightforward solution. The console-centric paradigm seems to be some kind of - unconscious? - gate-keeping to keep "forever" things as they are : a little, little niche in the desktop computing world. Forgive me about this, but although many technical explanations can be given about Linux's ways, I always get the gate-keeping impression in the end. After all, Linux rules the world with Internet servers, supercomputers and even somehow via Android on the smartphone realm. So, let them keep the desktop field private, to put it somehow...
I don't know, man. Wine is a complicated beast, that is chasing a moving target. I think codeweavers and wine-developers do a fantastic job and getting windows apps running on other platforms... it's not perfect, but it's kind of amazing... from my perspective - I just had a few years away from looking at wine's code -- i can tell you, a lot has changed within it's codebase in 4 years.

Desktop Linux has always been niche. It used to be WAY harder to use, ask anyone how has been using it for a longtime. It's much more user friendly than it used to be, many things that used to be really hard to configure are much easier too. I don't think there is any gate-keeping or anything like that going on... That's my perspective anyway.

Quote:
Originally Posted by Soli Deo Gloria View Post
Maybe in the future, as more and more newbies like me keep entering, little by little, there is a tiny, almost microscopic hope of a really friendly Linux environment. If they iron out all the bugs of Snap and the likes, maybe it will also be a step in that direction. But, in my case, as I profoundly dislike the direction Microsoft is taking with Windows 10, here I am... Apple is not an option for me here in Argentina, and I don't really expect a truly easy Linux experience, at least in my lifetime. Nevertheless, here comes my support to the Linux project, always reckoning that things could - and should - be way, way easier.
Desktop linux has gotten a lot easier to use. It still has it's challenges, but it's so much better than it used to be. I expect that will continue...

I'll say this, you might surprise yourself, given a bit of time. I didn't know much when i started using Linux, I learned a ton of stuff (plenty of things i didn't set out to learn along the way, but that I am glad i know now). At some point, you will find it is easy and straight-forward for you.

Quote:
Originally Posted by Soli Deo Gloria View Post
Sorry for the rant mode; it was a little relief after all these geeky times with Ubuntu Studio. Now, let's continue working...
all good man. I understand.
nspa is offline   Reply With Quote
Old 06-26-2020, 07:18 AM   #48
Soli Deo Gloria
Human being with feelings
 
Soli Deo Gloria's Avatar
 
Join Date: Oct 2013
Location: Buenos Aires, Argentina
Posts: 1,044
Default

Quote:
Originally Posted by osxmidi View Post
I remember having the same Kontakt 6 100% spiking problems on one of my i7 systems using Manjaro I think, and after I worked it out (I didn't have rt setup) I put up a guide at the LinVst github page https://github.com/osxmidi/LinVst/tr...e-Audio-Config

That config is from using Mint years ago by the way and it might not be the greatest around but it worked.

That was for one instance of a large Piano library using Kontakt 6, I don't know if it's the same problem that you have, and I also remember playing around with Reapers cpu threads (and maybe Kontakt's as well) but I can't remember exactly what I did or didn't do.

Do a search for "Kontakt 100% spiking" and there are some Windows and Mac users having the problem.

For Windows vsts there are some things missing from Wine.

A fair amount of more recent plugins use d2d1 and d2d1 development on Wine is very sloooooooooooooooooooooow.

There is also Powershell that's missing.

XEmbed is broken which makes plugin window embedding not function properly, and Wine won't accept some possible patches for it, but there are ways around XEmbed.

There are other things, some of which have been brought up in this thread, rt performance etc.

But, Wine is not Windows and never will be, and what runs, runs, and improvements do happen over time.

Thanks for the link, osxmidi! I'll compare the info there with my own setup to see if everything is matched. Nevertheless, using only light Win plugins and native ones gives me a very good performance, nevertheless. For my current projects is just perfect, and when I need to resort to Komplete, Omnisphere and the likes, I'll still have to boot from Win 7. Nevertheless, at least with Komplete, I know it's just a matter of time...it will eventually be possible to run it quite decently at some point, I'm confident about it. And maybe, the same will apply to everything else. I'll have to grab tips here and there, and possibly Nspa's hack will be a first step in that direction, once I can wrap my head around Manjaro.


Quote:
Originally Posted by nspa View Post
...While i think it's quite possible to work around many things to get better performance and stability. I find it doubtful, that it would match Windows performance for our use case (which in some ways, has far more stringent requirements than say, gamers needs).

also, you should try yabridge - i like it better than Linvst. it seems pretty solid. kind of does a few things different (in it's implementation) than some of the other bridges.

Yes, I'm keeping my eye on Yabridge, too, as a complement to Linvst, which already works fine for many things and it's rather easy (at least for Linux's audio standards) to setup. The only thing that Yabridge makes difficult, is asking to set a PATH environment variable. I've searched for an easy guide, but it wasn't clear to me how to do it, and my attempts (as on many other occassions) failed. If you've got a straightforward tip, it will be immensely appreciated. I haven't had much time to look for it, too, but I'll solve it one way or the other.


Quote:
Originally Posted by nspa View Post
I've never used Manjaro, but a lot of people do seem to like it... I imagine if i was a new to linux today, I would probably use it... But i started using linux years ago. -- I used Fedora mostly for a few years, but distro hopped a bit too -- ultimately, at some point i was using ArchWiki all of the time for help (despite not using Arch). I also didn't like working with rpms (or deb, for that matter), so I was pretty drawn to Archlinux' build system, package management and the AUR... so i jumped ship. ;-)


obviously, Manjaro being Arch-based - it's users reap all of this stuff too.

I need some days since I'm busy with other musical tasks right now, but I'll see if I can install Manjaro alongside Ubuntu Studio and handle all the basics, little by little. You can be sure I'll write to you after that, to begin testing your patches. I could spend days or weeks with the Manjaro initiation, though, but the perspective of a good Kontakt performance gives me the strength to face the challenge. As you say, there will maybe come the time when I will be able (hopefully!) to package your setup for Ubuntu or somebody else will do it. Patience is the keyword here. All the things I could achieve in Linux in less than two months are the best incentive.



Quote:
Originally Posted by nspa View Post
I don't know, man. Wine is a complicated beast, that is chasing a moving target. I think codeweavers and wine-developers do a fantastic job and getting windows apps running on other platforms... it's not perfect, but it's kind of amazing... from my perspective - I just had a few years away from looking at wine's code -- i can tell you, a lot has changed within it's codebase in 4 years.

Desktop Linux has always been niche. It used to be WAY harder to use, ask anyone how has been using it for a longtime. It's much more user friendly than it used to be, many things that used to be really hard to configure are much easier too. I don't think there is any gate-keeping or anything like that going on... That's my perspective anyway.

Desktop linux has gotten a lot easier to use. It still has it's challenges, but it's so much better than it used to be. I expect that will continue...

I'll say this, you might surprise yourself, given a bit of time. I didn't know much when i started using Linux, I learned a ton of stuff (plenty of things i didn't set out to learn along the way, but that I am glad i know now). At some point, you will find it is easy and straight-forward for you.

all good man. I understand.

Believe me when I say that, once the rant mode shuts down, I am quite happy with Linux. Having a free and open OS is a bliss in many aspects. My complaints point mostly to the fact that it still isn't ready for mass consumption. Its ultra-geek inception in the 90's, and as you say its collaborative nature also imbue it with certain characteristics that on one hand lead to its extreme customizability, and on the other leaves you having to deal directly with things that, in the end, will have to be automated, as it has already happened with so many other things.



I also know first-hand about Linux's improvements, yes. In 2017 I tried to enter in vain, not being able to wrap my head around it. Now in 2020, although I still meet with many challenges, I've been able to solve all the basics and even set Reaper for work with lots of tools that weren't for sure available just a few years ago. Hence, a return to Windows, as it happened in 2017, is not desirable anymore for me. Only a dual (or triple) boot with Win 7 will be for now the negotiation, until the time arrives when we will be able to run everything decently. And I have hopes about it, since what I already see in Kontakt - apart from the nasty periodic spikes - is indeed decent.
Soli Deo Gloria is offline   Reply With Quote
Old 06-27-2020, 01:00 PM   #49
nspa
Human being with feelings
 
Join Date: Jun 2020
Posts: 14
Default

Quote:
Originally Posted by 4duhwinnn View Post
It's important to have a frame of reference for performance
on older/different systems. And it's important to recognize
the role of video cards displaying complex gui's in linux,
and in wine setups. I think almost everbody making music in linux
cares a lot about pre i9 performance.
mi dos centavos
that's a fair point. i suppose my laughter had more to do with using old hardware like that for running windows VSTs in wine, that are heavier... an old CPU like that simply isn't really suitable (the GPU is a secondary concern)... it's not even very useful for gauging performance - especially given that with (vanilla) wine, all your gauging it at what point threads get out of sync? at what point does wineserver lock up? or how well windows' realtime prioclass threads run at SCHED_OTHER?

there's really nothing to gauge or any valid reference for performance, until those issues are fixed, IMO.

if i was stuck with hardware like that and needed to run windows VSTs - that machine would be running Windows, period. because you'll never solve the performance problems with such ancient hardware... it would be far easier to find a way to get the VST's audio from that old windows machine piped into a linux machine / DAW. (netjack or an audio interface).

the end result would be way better. you know, get down to making music - rather than trying to fit a square peg through a round hole...

well, as far as pre-i9 performance. my laptop was like $500, so not exactly in the realm of i9. previous to that, i owned a 4th gen i7 and an amd phenom II before that... my current box may have a modern AMD CPU, but it's a mobile processor, not top-end specs. not even close... and again, relating to my last point; running big VSTs in wine on ancient hardware isn't a great plan. the CPU is a bigger problem than the GPU.
nspa is offline   Reply With Quote
Old 06-27-2020, 02:10 PM   #50
nspa
Human being with feelings
 
Join Date: Jun 2020
Posts: 14
Default

Quote:
Originally Posted by osxmidi View Post
I remember having the same Kontakt 6 100% spiking problems on one of my i7 systems using Manjaro I think, and after I worked it out (I didn't have rt setup) I put up a guide at the LinVst github page https://github.com/osxmidi/LinVst/tr...e-Audio-Config

That config is from using Mint years ago by the way and it might not be the greatest around but it worked.
There's no point in doing things this way on Arch or Manjaro or even Ubuntu/debian/mint/etc - all of them provide packages for this config + documentation. Obligatory Archer comment, telling you to RTFM. lol ;-)

https://wiki.archlinux.org/index.php...Connection_Kit

under installation - that's literally the very first step! install the realtime-privileges package, add your user to the realtime group.

ubuntu/debian have similar setups/documentation.

Archwiki covers all necessary setup for proaudio or RT users.

https://wiki.archlinux.org/index.php/Professional_audio

it covers pretty much everything, related to a basic setup for proaudio in linux. Most of which, isn't even specific to Arch or Arch-based distros (other than the arch-specific packages).
nspa is offline   Reply With Quote
Old 06-27-2020, 03:14 PM   #51
nspa
Human being with feelings
 
Join Date: Jun 2020
Posts: 14
Default

Quote:
Originally Posted by osxmidi View Post
I test using core duo's up to i7's.

I meant around 40% with rt not being set up on my system and then getting 100% spikes.

I went to one of my other systems and I didn't get the 100% spikes.
even with realtime privileges for your user / jack - it's quite easy to get large cpu spikes. Again, try loading it up with heavy multi-instruments, not just one piano library... To be clear - konatakt is intended to run many instruments at once, by design -- so any test that doesn't keep with that, largely isn't actually testing Kontakt in any meaningful way.

in my own testing (and general use) - i load it right up. not just one big piano libray. more like a dozen or so big libraries.

Quote:
Originally Posted by osxmidi View Post
Also 40% on a core duo is not really 40% on an i7, different variables.
obviously not. that much is obvious.

Quote:
Originally Posted by osxmidi View Post
I also found out that Kontakt 5 seemed to perform better than Kontakt 6 under Wine.
That has nothing to do with Wine. it's far more simple than that - kontakt 6 has higher system requirements in Windows (or MacOS) over Kontakt 5. There has been, after all, several years between releases. naturally, the newer version is designed to run on newer hardware.

Quote:
Originally Posted by osxmidi View Post
I'm all for any wine improvements coming from whoever.

If the improvements are patches from outside Wine, then will they be maintained for Wine 6, Wine7 etc etc, a lot of things have fallen by the wayside in Linux.

The main Wine Staging dev is trying to improve some bottlenecks and that's about all I know.
yeah, Zebediah is doing excellent work. Which is why I'm using some of his code. But on it's own, it's still not enough (for proaudio/wine). fsync helps with synchronization, but it doesn't help with some of the other threading issues that hurts performance/stability...

When i chatted with him, he didn't have a lot to say on the RT use case. I didn't get the impression that it was something on his radar / anything he was focused on. In fact, he seemed to suggest that, at least with the gamers/proton crowd - they weren't seeing much benefit of fsync over esync... i'm also reasonably sure that a lot of this work is being done by codeweavers for Steam/Proton, but may eventually end up in upstream wine.

but then again, the gamers aren't really using high priority RT threads for some of the synchronization threads (like I am), nor would they be doing so for threads that would fall under the windows' process realtime prioclass...

esync's APC threads are all run at SCHED_OTHER - so that hurts performance too. I could modify ntdll to make esync use realtime in my builds, but as I'm not using esync - i haven't bothered.

Last edited by nspa; 06-27-2020 at 03:51 PM.
nspa is offline   Reply With Quote
Old 06-29-2020, 06:10 AM   #52
Soli Deo Gloria
Human being with feelings
 
Soli Deo Gloria's Avatar
 
Join Date: Oct 2013
Location: Buenos Aires, Argentina
Posts: 1,044
Default

Quote:
Originally Posted by nspa View Post
There's no point in doing things this way on Arch or Manjaro or even Ubuntu/debian/mint/etc - all of them provide packages for this config + documentation.
Do you know of any Debian/Ubuntu source with packages for automatic config settings like these? I haven 't been able to find such packages. Ubuntu Studio has many things pre-tweaked but still needs manual modifications here and there. Ubuntu Studio Controls (obviously pre-installed ihere, but nevertheless available as an app for other distros), sets among other things the Cpu governor and Intel boost, controls Jack and bridges pulseaudio with it. But apart from this GUI app, I don't know of any other packages that can automate the real-time audio configurations for the user. Any hint about it that you could have would be immensely appreciated.


Quote:
Originally Posted by nspa View Post
Archwiki covers all necessary setup for proaudio or RT users.

https://wiki.archlinux.org/index.php/Professional_audio

it covers pretty much everything, related to a basic setup for proaudio in linux. Most of which, isn't even specific to Arch or Arch-based distros (other than the arch-specific packages).
I'll take a closer look at that Wiki page. I'll tell you in some days how easy it is to follow for a newbie...

Regarding Manjaro, I've been using it this weekend, via Live boot, for some everyday computing uses (browser, streaming for the family, etc). I really like it, and as it employs Xfce, which is also the default in Ubuntu Studio up to the present version, it feels quite familiar and friendly for me. Its default app selection is also quite nice for my taste.

I'll make a dual boot at any moment (triple, when Win 7 returns for some specific apps) and write to you via pm as I told you.


For now, I thank you again for your work and all the insights (my thanks goes out to all of you as well, guys). After some audio data compiling for the next weeks, I'll start at some point attempting to create my newbie summary in the first posts of this thread.
Soli Deo Gloria is offline   Reply With Quote
Old 06-29-2020, 09:38 AM   #53
calimerox
Human being with feelings
 
Join Date: Nov 2018
Posts: 42
Default

@ Soli Deo Gloria

I usually run linux mint with kxstudio repos and manjaro alongside, and without being any kind of linux expert at all i have to say manjaro is pretty straightforward to install, in my case also the more responsive system in general terms, and the differences in installing packages etc you get used to very fast. then when you d like to work under the hood , I have no clue,

in the manjaro forum there are also some threads about how to tweak it for realtime audio use...
calimerox is offline   Reply With Quote
Old 06-29-2020, 09:46 AM   #54
Glennbo
Human being with feelings
 
Glennbo's Avatar
 
Join Date: Mar 2008
Location: Planet Earth
Posts: 4,683
Default

Quote:
Originally Posted by nspa View Post
the end result would be way better. you know, get down to making music - rather than trying to fit a square peg through a round hole...
That's what I did. I wrote off *ALL* my Windows based audio plugins, and now use 100% pure Linux plugins for audio tracks.

Kontakt and Superior Drummer are the primary Windows plugins I use in Linux, but Superior only acts as an elaborate metronome for me while composing, and it gets replaced with acoustic drums by the end of a project, leaving only Kontakt to cover backing parts.

My machine is an eleven year old Asus P7P55D mobo with an Intel i5 750 plus a fairly hot rodded nVidia gaming video card my kid gave me when he upgraded his.
__________________
Glennbo
Hear My Music - Click Me!!!
--
Glennbo is offline   Reply With Quote
Old 06-29-2020, 08:14 PM   #55
nspa
Human being with feelings
 
Join Date: Jun 2020
Posts: 14
Default

Quote:
Originally Posted by Soli Deo Gloria View Post
Do you know of any Debian/Ubuntu source with packages for automatic config settings like these? I haven 't been able to find such packages. Ubuntu Studio has many things pre-tweaked but still needs manual modifications here and there. Ubuntu Studio Controls (obviously pre-installed ihere, but nevertheless available as an app for other distros), sets among other things the Cpu governor and Intel boost, controls Jack and bridges pulseaudio with it. But apart from this GUI app, I don't know of any other packages that can automate the real-time audio configurations for the user. Any hint about it that you could have would be immensely appreciated.




I'll take a closer look at that Wiki page. I'll tell you in some days how easy it is to follow for a newbie...

Regarding Manjaro, I've been using it this weekend, via Live boot, for some everyday computing uses (browser, streaming for the family, etc). I really like it, and as it employs Xfce, which is also the default in Ubuntu Studio up to the present version, it feels quite familiar and friendly for me. Its default app selection is also quite nice for my taste.

I'll make a dual boot at any moment (triple, when Win 7 returns for some specific apps) and write to you via pm as I told you.


For now, I thank you again for your work and all the insights (my thanks goes out to all of you as well, guys). After some audio data compiling for the next weeks, I'll start at some point attempting to create my newbie summary in the first posts of this thread.
Off hand, no. I couldn't point you to the packages / names. It was a year or two ago; i help setup a buddy's machine. because i never use anything but Arch (well, and some occasional tech support in Windows / MacOS for other people), it would be hard for me to keep track - even on Arch, i wouldn't remember specific package stuff like that - I would probably hit ArchWiki or search through packages and the AUR online, on Arch's website... I appreciate good documentation, because I have very selective memory. lol. I never used Ubuntu for any serious amount of time, but from what i do remember -- documentation was often lacking or outdated. it all felt very disorganized.

afaik; debian sets up jack with the realtime/audio group in their jack package. or at least, they used to. No matter what distro you use, there is going to be tweaking / manual intervention involved. I personally like that, in some regard -- because even if everything was setup for me; I'm quite positive that I would still be modifying and tweaking my system. It's nice to have the freedom and flexibility to do that.

that ubuntu studio app sounds alright. I could see how that would be handy.

Yeah, again. I've definitely heard nice things about Manjaro. Good community. newbie / user friendly. Arch-based. That's a really good combo, imho. I'm not surprised that your experience seemed to be good. Manjaro is basically 'the ubuntu of Archlinux'. Arch made for hoomans ;-)
nspa is offline   Reply With Quote
Old 06-29-2020, 08:49 PM   #56
nspa
Human being with feelings
 
Join Date: Jun 2020
Posts: 14
Default

Quote:
Originally Posted by Glennbo View Post
That's what I did. I wrote off *ALL* my Windows based audio plugins, and now use 100% pure Linux plugins for audio tracks.

Kontakt and Superior Drummer are the primary Windows plugins I use in Linux, but Superior only acts as an elaborate metronome for me while composing, and it gets replaced with acoustic drums by the end of a project, leaving only Kontakt to cover backing parts.

My machine is an eleven year old Asus P7P55D mobo with an Intel i5 750 plus a fairly hot rodded nVidia gaming video card my kid gave me when he upgraded his.
Makes sense.

For me, I use NI Komplete + a couple of other VSTs in Wine (no native VST instruments, at all). Kontakt is a huge driving factor in why I started hacking on Wine. Well, and NI Komplete, in general... I'll never give up using NI stuff, but I also refuse to use Windows or buy a Mac. so that's that - make it work. lol

I'm not doing a ton of composing; I'm mostly just a player. But I'm often doing the one-man-band thing, so huge stacks of instruments, percussion and fx - all being controlled from a midi keyboard or two... So it's basically like arming all of your heavy DSP / VSTi channels to record at once.

I obviously cannot have xruns happen ever, nor can I really do any tricks
like suspending FX or plugins, to reduce DSP load, as DAWs tend to do. So that's the other huge factor in why I'm hacking wine...

i suppose i've gone in the opposite direction ;-)
nspa is offline   Reply With Quote
Old 06-30-2020, 11:09 AM   #57
Glennbo
Human being with feelings
 
Glennbo's Avatar
 
Join Date: Mar 2008
Location: Planet Earth
Posts: 4,683
Default

Quote:
Originally Posted by nspa View Post
Makes sense.

For me, I use NI Komplete + a couple of other VSTs in Wine (no native VST instruments, at all). Kontakt is a huge driving factor in why I started hacking on Wine. Well, and NI Komplete, in general... I'll never give up using NI stuff, but I also refuse to use Windows or buy a Mac. so that's that - make it work. lol

I'm not doing a ton of composing; I'm mostly just a player. But I'm often doing the one-man-band thing, so huge stacks of instruments, percussion and fx - all being controlled from a midi keyboard or two... So it's basically like arming all of your heavy DSP / VSTi channels to record at once.

I obviously cannot have xruns happen ever, nor can I really do any tricks
like suspending FX or plugins, to reduce DSP load, as DAWs tend to do. So that's the other huge factor in why I'm hacking wine...

i suppose i've gone in the opposite direction ;-)
My first experience using bridged Windows plugins in Linux exposed real quick that bridging VSTs running in WINE was a bottleneck.

Some of my projects wouldn't play smooth because I was bridging somewhere in the vicinity of 100 VST plugins and with that many it was obvious that it was less efficient. Rather than trying to make all my Windows VSTs work as well as they did in Windows, I decided to replace as many as possible with native Linux VSTs, so I could get back to working on music rather than working on my computer.

Now that I'm using all native Linux VSTs for audio tracks, using even five or ten bridged Windows VST instruments doesn't dog my 11 year old computer down, and I can work on music as efficiently as I ever did in Windows.
__________________
Glennbo
Hear My Music - Click Me!!!
--
Glennbo is offline   Reply With Quote
Old 06-30-2020, 05:08 PM   #58
nspa
Human being with feelings
 
Join Date: Jun 2020
Posts: 14
Default

Quote:
Originally Posted by Glennbo View Post
My first experience using bridged Windows plugins in Linux exposed real quick that bridging VSTs running in WINE was a bottleneck.

Some of my projects wouldn't play smooth because I was bridging somewhere in the vicinity of 100 VST plugins and with that many it was obvious that it was less efficient. Rather than trying to make all my Windows VSTs work as well as they did in Windows, I decided to replace as many as possible with native Linux VSTs, so I could get back to working on music rather than working on my computer.

Now that I'm using all native Linux VSTs for audio tracks, using even five or ten bridged Windows VST instruments doesn't dog my 11 year old computer down, and I can work on music as efficiently as I ever did in Windows.
Yes, not hard to spot wine being the bottleneck. well, wineserver, in particular - in that type of situations. it makes sense that you would ultimately replace a lot of your windows VSTs, given your requirements.

I think there's starting to be decent linux VSTs, but sadly (for me / my usecase) none of them can really replace anything that I use. Nothing can replace Kontakt, Reaktor, GuitarRig or any of that jazz -- that isn't me knocking or bad mouthing any of the native plugins, or anything... many are very good -- but NI is top-notch, really hard to substitute or even find anything that's comparable.

Once i get a few more things sorted out in wine -- I'll likely setup things how I used to - multiple wineserver setup (which will kill any remaining issues where wineserver is the bottleneck)... although, wineserver isn't even a big problem for me, in my current wine builds anyway, but still things will scale up a big better / be more reliable.

then after that, I plan to revisit my hacks for creating psuedo-wineprefixes. I use a master wineprefix (where i actually install everything), then through some trickery; I can have multiple psuedo-wineprefixes with shared data (shared from the master prefix).. ~ I set it up, so they can't corrupt my master-wineprefix. it took some figuring out, when i came up with the concept a few years ago -- but it worked like a dream, so my hope is that I'll get working again, then publish my scrips for others to use...
nspa is offline   Reply With Quote
Old 07-01-2020, 07:36 AM   #59
Glennbo
Human being with feelings
 
Glennbo's Avatar
 
Join Date: Mar 2008
Location: Planet Earth
Posts: 4,683
Default

If I could convert the Factory Library from Kontakt to .gig format, LinuxSampler could function as a native Linux replacement for Kontakt, but as it is sample sets are the limiting factor for LinuxSampler.
__________________
Glennbo
Hear My Music - Click Me!!!
--

Last edited by Glennbo; 07-01-2020 at 07:43 AM.
Glennbo 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 03:06 AM.


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