DAW Stress Test: Logic/ProTools/StudioOne/Cubase

Audio Plugin Hosts and other audio software applications discussion
Post Reply New Topic
RELATED
PRODUCTS

Post

Dewdman42 wrote: Fri Sep 13, 2019 11:21 pm As I have said repeatedly now, I welcome test data from either of you, or anyone else.
I guess I can load up the test I just did but it's flatly easy to do. There is almost zero benefit to me hosting templates, especially since I do not own the same DAWs as you.

Create a MIDI track with a simple note run, use a heavy CPU plug in like Diva, replicate the settings in all DAWs and add tracks until the audio is broken, pull out tracks until the audio is stable. You then have the actual every day use case scenario for CPU use in a DAW.

You could do the same thing with VEP, add tracks in Logic, Reaper and DP etc. until there are too many artifacts to work efficiently, then back off until stable. Looking at numbers before this stress level isn't going to tell you much of anything. Like I've said numerous times, some DAWs will grab way more CPU for a single instance of a plug in than others, but it's not the case with ten instances. It might look like your CPU is at 30% with one instance, but the DAW can handle 6 instances. This is most obvious in Live, but all DAWs react this way to a degree.

Post

There are numerous tests that can be done, all meaningful. You seem only to be interested in which DAW can load up the largest max number of channels and plugins. so do that one!

That is a meaningful test, but its also not even a real-world situation for most people, FWIW.

You don't need to host any templates. Just run some tests and collect the data. Ensure you are testing for a specific "thing" and attempt to make all other factors as equal as possible in order to have meaningful comparison.

Most of the speculation made on internet forums by m musicians about how they think the internals of DAW's work is mis-information and largely useless. Measure the outcome and share the results.
MacPro 5,1 12core x 3.46ghz-96gb MacOS 12.2 (opencore), X32+AES16e-50

Post

Dewdman42 wrote: Fri Sep 13, 2019 11:41 pm There are numerous tests that can be done, all meaningful. You seem only to be interested in which DAW can load up the largest max number of channels and plugins. so do that one!

That is a meaningful test, but its also not even a real-world situation for most people, FWIW.

You don't need to host any templates. Just run some tests and collect the data. Ensure you are testing for a specific "thing" and attempt to make all other factors as equal as possible in order to have meaningful comparison.

Most of the speculation made on internet forums by m musicians about how they think the internals of DAW's work is mis-information and largely useless. Measure the outcome and share the results.
?? I already did "that one", you asked for results, they are in this thread, are screenshots what you're after here?

I'm directly asking you and anyone else posting results, to please do the tests to failure. It's the only way to know what the limits of your DAW are. Everything else is not going to be accurate.

With record enabled you kill the pre-rendering so the results are different. With DP here I get 8 instances of Diva before failure, 10 with record disabled on the MIDI tracks.

Logic performs better here, it gets the exact same performance as without record enabled. 10 instances. Even putting all ten tracks on separate MIDI channels.

Both Logic and DP are crackling a bit though.

Here's a great clincher, and backs up your observations! :)
Reaper with record enabled stumbles with more than three tracks with record enabled. That's the biggest hit from having a track "live" of any of them and why in your specific case with VEP, (which by nature runs the tracks live), Logic is looking the best. All of this gives vastly different results than running an Intel CPU application though. And it's worth noting that Reapers internal CPU meter is literally reading 5% CPU usage with 4 tracks record enabled and really bad crackling. So there's a good chance that a setting can be changed in Reaper to get better real time performance.

Post

machinesworking wrote: Sat Sep 14, 2019 12:43 am
?? I already did "that one", you asked for results, they are in this thread, are screenshots what you're after here?
Do you have the data available somewhere? I did not see anything like that. Random summary comments I do not consider to be well-collected and organized data that can be analyzed. If you posted results comparing DAWs in some way, I missed it, but I'm interested.
I'm directly asking you and anyone else posting results, to please do the tests to failure. It's the only way to know what the limits of your DAW are.
I'm not actually that interested in finding out the max limits. I was and am interested in how each DAW could handle around 100 tracks of orch mockup. Which is the test I already did. As I said, my original point of doing the test had nothing to do with comparing DAW's it had more to do with the fact that VEP7 came out and I had performance problems with it and so I started doing methodical tests comparing VEP6 to VEP7, and I was in discussions with VSL engineer and so forth, I tried several different DAW's to see if that was the issue and started notice other interesting things (Cubase performance sucked and VSL thought so too), and then I upgraded OSX to Mojave and on and on...so I did these tests and it turned out to be interesting in the end to find out that under Mojave VEP7 was better performer then VEP6 after all, yay, but in some cases performance was better without VEP then with, and of course the differences between DAW's was also interesting. So added a few more tests with Reaper to round it out and shared the results. FWIW. I'm not that interested in finding out which one can handle some theoretical max limit which I will probably never hit anyway. I am interested in knowing which ones are being more efficient about handling a typical project for me.

Also, if you want the max results, one person will need to do it. You or someone else. Because in order to have meaningful comparisons all the DAW's have to be tested on the same system to compare against each other. So maybe that's you that needs to do it if you wanna know.
Everything else is not going to be accurate.
Uhm, poor choice of words. My tests and results were categorically and systemically "accurate". Whether or not you consider that data relevant to you, is up to you, but you cannot criticize the accuracy. The relevancy is a personal decision.

With record enabled you kill the pre-rendering so the results are different. With DP here I get 8 instances of Diva before failure, 10 with record disabled on the MIDI tracks.
That would be another interesting test also. But with DP, I recall that it was more efficient without VEP then with, unlike some others, probably because of pre-rendering. However, overall, it was still not as efficient as LogicPro with 100 tracks.
Both Logic and DP are crackling a bit though.
If they are crackling then you already passed your max point. Back off on something until it stops crackling and keep track of exact numbers
Here's a great clincher, and backs up your observations! :)
Reaper with record enabled stumbles with more than three tracks with record enabled. That's the biggest hit from having a track "live" of any of them and why in your specific case with VEP, (which by nature runs the tracks live), Logic is looking the best. All of this gives vastly different results than running an Intel CPU application though. And it's worth noting that Reapers internal CPU meter is literally reading 5% CPU usage with 4 tracks record enabled and really bad crackling. So there's a good chance that a setting can be changed in Reaper to get better real time performance.
I didn't do my tests with any live tracks first of all, the results would have been different and that is another useful test. In LogicPro, putting a track into live mode will isolate that one track to one core, etc..and your single core will have a hardware bound limit to how much plugin DSP it can handle. This is unlikely to be much different between different DAW's in my opinion. But it would be interesting to compare.
MacPro 5,1 12core x 3.46ghz-96gb MacOS 12.2 (opencore), X32+AES16e-50

Post

Dewdman42 wrote: Sat Sep 14, 2019 1:17 am Do you have the data available somewhere? I did not see anything like that. Random summary comments I do not consider to be well-collected and organized data that can be analyzed. If you posted results comparing DAWs in some way, I missed it, but I'm interested.
I can lay it out for you, but a spreadsheet doesn't automagically make it better data. It just doesn't.
I'm not that interested in finding out which one can handle some theoretical max limit which I will probably never hit anyway. I am interested in knowing which ones are being more efficient about handling a typical project for me.
They are directly related, joined at the hip. There is no other way to put it. Other tests are not stress tests, they're just going to point out possible incompatibilities or oddities of a DAW. It's useful information for sure, but it's not a stress test.
Also, if you want the max results, one person will need to do it. You or someone else. Because in order to have meaningful comparisons all the DAW's have to be tested on the same system to compare against each other. So maybe that's you that needs to do it if you wanna know.
Sure, everyones system will behave slightly differently, and this is another reason why stress tests are better indicators, it will show a percentage difference between DAWs, not a computer to computer comparison. These differences are consistent.


Uhm, poor choice of words. My tests and results were categorically and systemically "accurate". Whether or not you consider that data relevant to you, is up to you, but you cannot criticize the accuracy. The relevancy is a personal decision.
It's not accurate to the idea of a stress test, a test of your system? sure, but the data is not comparable to other systems because there is no way to get a realistic percentage difference between DAWs off of a test that does not take that system to failure, thereby eliminating the system as a variable as much as possible.

With record enabled you kill the pre-rendering so the results are different. With DP here I get 8 instances of Diva before failure, 10 with record disabled on the MIDI tracks.
That would be another interesting test also. But with DP, I recall that it was more efficient without VEP then with, unlike some others, probably because of pre-rendering. However, overall, it was still not as efficient as LogicPro with 100 tracks.
Unless something has changed significantly, VEP tracks don't pre-render. Vienna probably just did a good job of coding the MAS version of VEP since they only had one DAW to code it for, like they did with Logic and AU.
Both Logic and DP are crackling a bit though.
If they are crackling then you already passed your max point. Back off on something until it stops crackling and keep track of exact numbers
That's easy, these are brute force numbers, on my system without record enabled Logic and DP both get 9 instances with 0 crackling, slight spikes, blips really, at 10 instances.
Here's a great clincher, and backs up your observations! :)
Reaper with record enabled stumbles with more than three tracks with record enabled. That's the biggest hit from having a track "live" of any of them and why in your specific case with VEP, (which by nature runs the tracks live), Logic is looking the best. All of this gives vastly different results than running an Intel CPU application though. And it's worth noting that Reapers internal CPU meter is literally reading 5% CPU usage with 4 tracks record enabled and really bad crackling. So there's a good chance that a setting can be changed in Reaper to get better real time performance.
I didn't do my tests with any live tracks first of all, the results would have been different and that is another useful test. In LogicPro, putting a track into live mode will isolate that one track to one core, etc..and your single core will have a hardware bound limit to how much plugin DSP it can handle. This is unlikely to be much different between different DAW's in my opinion. But it would be interesting to compare.
Again, by using VEP you're getting live tracks. VEP is well coded and CPU light though, that's why I didn't use it for tests, it's not going to hit any CPU hard.

Again, in my tests for CPU performance with a heavy plug in, Reaper kills when it's Anticipative FX Processing is allowed to work.

For your clarification.
Test Machine - Mac Pro 3.33ghz 12 cores, 24GB RAM, 512mbs XP941 M.2 OS drive, Mojave latest build, Fireface 800 etc.

Test- single quarter note four bar MIDI file used in all DAWs, 256 buffer. U-He Diva, Initialize patch, multi processing off.

Results-

Logic - 10 instances, whether record armed or not. 9 with zero interuptions in the audio.

DP10- 10 instances, 9 with zero interruptions, and only 8 if tracks are armed for recording.

Reaper- 14 instances no crackling, with record off, 3 with record on.



Reaper obviously has a substantial hit with live tracks, VEP runs by default like an external instrument, so it's not surprising to me in your case it's underperforming. I would bet this can be optimized though, just like most things in Reaper.

Post

machinesworking wrote: Sat Sep 14, 2019 2:53 am
Dewdman42 wrote: Sat Sep 14, 2019 1:17 am Do you have the data available somewhere? I did not see anything like that. Random summary comments I do not consider to be well-collected and organized data that can be analyzed. If you posted results comparing DAWs in some way, I missed it, but I'm interested.
I can lay it out for you, but a spreadsheet doesn't automagically make it better data. It just doesn't.
well if you don't provide data, I'm sorry but you're full of baloney. I don't care the format, give us the data showing your test results.
I'm not that interested in finding out which one can handle some theoretical max limit which I will probably never hit anyway. I am interested in knowing which ones are being more efficient about handling a typical project for me.
They are directly related, joined at the hip. There is no other way to put it. Other tests are not stress tests, they're just going to point out possible incompatibilities or oddities of a DAW. It's useful information for sure, but it's not a stress test.
A stress test is not the only useful test and no they are not joined at the hip. They are different tests. I prefer to know a more real world scenario than a maxed out stress test which is not real world. One is not better then the other, it just depends on what is valuable to you. You seem to prefer to know the max limits, so go f__ing test it and give us the data and stop complaining about the tests done by myself and others. Its very tiring, I'm done with this discussion now, good night.
MacPro 5,1 12core x 3.46ghz-96gb MacOS 12.2 (opencore), X32+AES16e-50

Post

Dewdman42 wrote: Sat Sep 14, 2019 2:59 am
machinesworking wrote: Sat Sep 14, 2019 2:53 am
Dewdman42 wrote: Sat Sep 14, 2019 1:17 am Do you have the data available somewhere? I did not see anything like that. Random summary comments I do not consider to be well-collected and organized data that can be analyzed. If you posted results comparing DAWs in some way, I missed it, but I'm interested.
I can lay it out for you, but a spreadsheet doesn't automagically make it better data. It just doesn't.
well if you don't provide data, I'm sorry but you're full of baloney. I don't care the format, give us the data showing your test results.
I just did.. look at the information in the last post. It's in bold, it's italicized. Do you need a spreadsheet?

The results are tallied by instances, there's no real need to look at any meter, you hear crackling, you back off.

What exactly is missing?

Post

I see your couple lines, but I not understand what you did or what it represents, so no its not meaningful to me. Maybe you can try explaining it better for all to learn from your genius. good night now really.
MacPro 5,1 12core x 3.46ghz-96gb MacOS 12.2 (opencore), X32+AES16e-50

Post

Dewdman42 wrote: Sat Sep 14, 2019 3:19 am I see your couple lines, but I not understand what you did or what it represents, so no its not meaningful to me. Maybe you can try explaining it better for all to learn from your genius. good night now really.
Sorry, maybe this isn't completely clear, but I don't know what else to say?
Instances = instantiations of Diva.

Reaper runs 14 instantiations of Dive without issue playing a 4 bar MIDI file. It gets significantly less when you arm the tracks for recording, thereby stopping Reaper from pre-rendering the plug ins. This drops the number to 3, which is crazy.

Logic is steadfast either way, with 9 instantiations of Diva running. This is probably why you're getting better results with Logic, since to my knowledge VEP AU's VSTi's etc. are not going to be pre rendered.

Post

A couple comments...

First about VEP and live mode. First we have to define what you mean when you are talking about "Live" mode. In LogicPro and I assume other DAW's too, when a track is "armed" its in live mode. In the case of LogicPro, it isolates that track/channel to a single core. This ensures its getting the closest thing it can get to real time performance....notwithstanding whatever latency introduced by buffer and plugins.

VEP behaves differently if its on a track that is "armed" and in live mode, then it does if its just playing back the track not in live mode. Here is a direct quote from a VSL engineer I was corresponding with a few months ago.
Logic is indeed sending the buffers of midi events to the VEP plugin earlier for playback tracks, than for armed tracks - and this is kind of the point. VEP renders these as soon as it gets them - and sends the audio buffers back to Logic. Logic then plays back (at device buffer size) from the already rendered, larger buffer.
He went on to talk about how if a track is not armed in live mode, then VEP could add 1500 or even 3000 samples of extra latency to render ahead.. You can see the results of this actually in VEP, if you are playing a mix down with no live armed tracks you may notice the LED meters are way early (or late?) compared to the music you hear. This is due to this extra latency which VEP is injecting in order to render ahead things during mix down when latency doesn't matter.

Also when things are in mix down mode, the DAW or VEP can do things ahead of time, can process things across cores more and other things...versus a live armed track which needs to be on a single core, will be limited by what the clock speed of that core is and can't be rendered ahead at all, due to the live nature of it. Thus live armed tracks are more prone to drop outs. But VEP does not operate in live mode unless the track in question is armed intentionally, then of course it is in live mode, just like any other instrument plugin would be.

Regarding DP's Next Gen Pre Gen...the interesting thing is that when that came out I was really struck with the thought "isn't that how it always works?" I mean I found it kind of dumb to think that DAW's wouldn't already be doing essentially what MOTU was saying they were only now adding. But maybe not, I don't know. I have heard it speculated that LogicPro has always done that for a long time, but I haven't found that documented anywhere. People have just made those kinds of comments because of its excellent performance, which frankly far exceeded DP's until NextGen PreGen. Or its possible that NextGen PreGen is actually pre-rendering EVEN MORE then other DAW's do, I can't really say...I don't see any dramatic improvement in DP when I tested it. But...Not all instrument plugins are compatible with NextGen PreGen, including VEP, I know it is not. I also tested DP using VIPro on 100 tracks (without VEP) and the performance was still not that great...but its always possible that VIPro is also not compatible with NextGen PreGen. Can't recall right now.

Some of the poor performance you are noticing with Reaper may be related to having tracks armed in live mode...So... in order to compare the DAW's fairly you have to try to make sure they are all using the same optimizations...eliminate live mode for example (unless you are specifically wanting to test how they all handle live mode in which case ensure they are all using live mode).

Another thing I want to point out about your test is that you basically loaded up as many Diva instances as you could until crap out. Ok. However, Diva is well known to be a DSP heavy plugin. At some point you were basically testing Diva more then you were testing the DAW's hosting it. If you really want to test the DAW's, you should try to use a less computationally heavy plugin so that more emphasis is placed on the harnessing code around the plugin in the DAW and evaluating the efficiency of the DAW itself. The DAW's have very little influence over the code in the plugin.
MacPro 5,1 12core x 3.46ghz-96gb MacOS 12.2 (opencore), X32+AES16e-50

Post

Dewdman42 wrote: Sat Sep 14, 2019 7:28 am A couple comments...

First about VEP and live mode. First we have to define what you mean when you are talking about "Live" mode. In LogicPro and I assume other DAW's too, when a track is "armed" its in live mode. In the case of LogicPro, it isolates that track/channel to a single core. This ensures its getting the closest thing it can get to real time performance....notwithstanding whatever latency introduced by buffer and plugins.

VEP behaves differently if its on a track that is "armed" and in live mode, then it does if its just playing back the track not in live mode. Here is a direct quote from a VSL engineer I was corresponding with a few months ago.
Logic is indeed sending the buffers of midi events to the VEP plugin earlier for playback tracks, than for armed tracks - and this is kind of the point. VEP renders these as soon as it gets them - and sends the audio buffers back to Logic. Logic then plays back (at device buffer size) from the already rendered, larger buffer.
He went on to talk about how if a track is not armed in live mode, then VEP could add 1500 or even 3000 samples of extra latency to render ahead.. You can see the results of this actually in VEP, if you are playing a mix down with no live armed tracks you may notice the LED meters are way early (or late?) compared to the music you hear. This is due to this extra latency which VEP is injecting in order to render ahead things during mix down when latency doesn't matter.

I think we're in the same boat here, decently educated musicians who are trying to navigate the intricacies of how various DAWs and plug ins manage resources. So from my limited knowledge there are many ways that a track will be rendered in real time VS pre rendered, the big problem here as I see it from our perspective is different DAWs are calling different things Pre Rendering, or Anticipative FX Processing, or buffering etc. With my tiny pee of a brain and limited knowledge I think it looks like there are two ways that DAWs do this, buffering, adding milliseconds of delay to tracks, (CPUs obviously are more effective when they aren't tasked with truly real time performance), and pre rendering, recording tiny bits (or all depending on the DAW) of the track in some sort of RAM state. Logic in the past anyway, was seemingly the king of buffering tracks. Even in the test, it seems like Logic only truly "arms" a track for recording if there is data going into it. Even with Auto Demix by channel etc. turned on and tracks armed.

So for pre rendering in particular, things are similar to the way Freeze works in most DAWs, if a track is an Aux, or a multi audio out Kontakt instrument, or an external instrument, or armed for recording, then freeze will not work, or at least has to render in real time. This is what I meant when I said that VEP is treated at least in DP like a live track, it's seen as an external instrument, and always operates in Real Time. You can see this clearly in DP's Effects Performance monitor. I think Logic is relying more on a larger buffer size for tracks that are not record armed than some sort of pre rendering, (this has at least been the consensus for years about Logic performance VS other DAWs), and the one advantage of that would be that it's going to work with "live" tracks better than DP etc. It also explains why Reaper would trash it with a "native" plug in like Diva on an un-armed track, but Reaper would not trash it and perform worse with "live" tracks like VEP instances.
Also when things are in mix down mode, the DAW or VEP can do things ahead of time, can process things across cores more and other things...versus a live armed track which needs to be on a single core, will be limited by what the clock speed of that core is and can't be rendered ahead at all, due to the live nature of it. Thus live armed tracks are more prone to drop outs. But VEP does not operate in live mode unless the track in question is armed intentionally, then of course it is in live mode, just like any other instrument plugin would be.
If Logic can address a track with more than one core that's a first to me, from my experience DAWs tend to assign cores to tracks. You can test this pretty easily, it's much much easier to overload a single track with your 12 core machine than it is to overload 12 tracks. Diva oddly enough is an exception, but it's multi core handling is assignable for a reason, because it can cause problems.
Regarding DP's Next Gen Pre Gen...the interesting thing is that when that came out I was really struck with the thought "isn't that how it always works?" I mean I found it kind of dumb to think that DAW's wouldn't already be doing essentially what MOTU was saying they were only now adding. But maybe not, I don't know. I have heard it speculated that LogicPro has always done that for a long time, but I haven't found that documented anywhere. People have just made those kinds of comments because of its excellent performance, which frankly far exceeded DP's until NextGen PreGen. Or its possible that NextGen PreGen is actually pre-rendering EVEN MORE then other DAW's do, I can't really say...I don't see any dramatic improvement in DP when I tested it. But...Not all instrument plugins are compatible with NextGen PreGen, including VEP, I know it is not. I also tested DP using VIPro on 100 tracks (without VEP) and the performance was still not that great...but its always possible that VIPro is also not compatible with NextGen PreGen. Can't recall right now.
I think DP has always not had much of an audio buffer, so Pre Rendering is used. It's possible that all DAWs do this to a degree but I can't say. Like I mentioned I think there are two at least different ways DAWs are trying to relieve resources on tracks.
Some of the poor performance you are noticing with Reaper may be related to having tracks armed in live mode...So... in order to compare the DAW's fairly you have to try to make sure they are all using the same optimizations...eliminate live mode for example (unless you are specifically wanting to test how they all handle live mode in which case ensure they are all using live mode).
Yeah you must have glanced too quickly at my test results there no worries. :) Basically Reaper with tracks armed for recording or put in live mode etc. does really poorly, but it trashes DP and Logic with unarmed tracks. a drastic difference. It really does look like DP Logic and Reaper are all using vastly different methods of resource management, just looking at the massive differences in results I get arming or not arming tracks in them.

Another thing I want to point out about your test is that you basically loaded up as many Diva instances as you could until crap out. Ok. However, Diva is well known to be a DSP heavy plugin. At some point you were basically testing Diva more then you were testing the DAW's hosting it. If you really want to test the DAW's, you should try to use a less computationally heavy plugin so that more emphasis is placed on the harnessing code around the plugin in the DAW and evaluating the efficiency of the DAW itself. The DAW's have very little influence over the code in the plugin.
Lower CPU plug ins will give a more refined result, but over the years it's been my observation that it's not that big of a difference. I can use something like Massive and you see a more unified result in some ways, in the sense that the 12 cores of my Mac Pro more evenly distribute the resources etc. The results are mostly consistent though, Reaper does the best by 10-20%, which is negligible to a degree. What is surprising is how badly DP and Logic did this time, generally Diva instances would hit 11, with the 12th one sharing resources with the DAW and crapping out.

I have no issue with doing a test with a more CPU friendly plug in though. I'm fascinated with how drastic the difference is with Reaper so I'm planning on running more tests anyway. :)

Post

My results do not not conclude that reaper trashed logic with unarmed tracks, quite the opposite. And vep is NOT in live mode.
MacPro 5,1 12core x 3.46ghz-96gb MacOS 12.2 (opencore), X32+AES16e-50

Post

Dewdman42 wrote: Sat Sep 14, 2019 6:13 pm My results do not not conclude that reaper trashed logic with unarmed tracks, quite the opposite.
You never did any test to failure from what you've stated yourself. Your tests are effectively measuring idle speed. This is why I can easily say that Reaper is getting more plug ins, but all you can say is Reaper seemed to use more resources on graphs than Logic. There's a real world difference here.
And vep is NOT in live mode.
I think you're misunderstanding what I'm saying, plus I know of no meter in Logic that tells you whether something is in real time or pre generated, since that's DP's method. I do not think they use the same methods. I only used DP's terminology to attempt to explain why VEP is doing better in Logic, which I'm pretty sure uses added audio buffering on tracks that aren't armed for recording.

Again, I think there are two methods that are commonly used to save CPU in DAWs, PreRendering or Adaptive FX Processing, and heavy audio buffering on unarmed tracks.

Logic doesn't have a live mode really, that's what I'm getting at, it treats all tracks that are not receiving data on the input with a larger than your audio settings buffer.

This explains why I'm getting much better results from Reaper with unarmed tracks, and why arming or not arming makes the least amount of difference in Logic.

Post

machinesworking wrote: Sat Sep 14, 2019 6:02 pm I think we're in the same boat here, decently educated musicians who are trying to navigate the intricacies of how various DAWs and plug ins manage resources.
:tu:
So from my limited knowledge there are many ways that a track will be rendered in real time VS pre rendered, the big problem here as I see it from our perspective is different DAWs are calling different things Pre Rendering, or Anticipative FX Processing, or buffering etc. With my tiny pee of a brain and limited knowledge I think it looks like there are two ways that DAWs do this, buffering, adding milliseconds of delay to tracks, (CPUs obviously are more effective when they aren't tasked with truly real time performance), and pre rendering, recording tiny bits (or all depending on the DAW) of the track in some sort of RAM state. Logic in the past anyway, was seemingly the king of buffering tracks. Even in the test, it seems like Logic only truly "arms" a track for recording if there is data going into it. Even with Auto Demix by channel etc. turned on and tracks armed.
Getting into quite a bit of speculation there without insider knowledge about how these apps are coded. But I will just say that pre-rendering or larger buffers...its all kind of the same thing. Whether tracks are pre-rendered before actually hitting play or not, is a question I don't think any of us really know, except for MOTU has included it as a stated feature in DP now. Perhaps Logic always did it, perhaps not, we don't really know. But in any case, I personally would have thought they ALL did it that way from the get go and I was shocked when MOTU released it as a relatively recent feature add.

But here's the thing.. ALL plugin processing happens ahead of time, and not in real time. It operates on a buffer. If you make the buffer bigger, then you give the DAW and computer more time to service other processes, multi-tasking, for the DAW itself to service GUI issues, etc.. it can call the DSP code in whatever way it needs to...utilizing cores as best it can, for example... it provides more breathing room basically to multi-task all those different things. Freezing a track is essentially just a REALLY BIG buffer. And Pre-rendering is something like a dynamically frozen track I guess? With a smaller buffer there is a lot less time and more possibility of a drop out occurring because DSP code could not complete in time. Its still rendered ahead. Does it really matter whether it was pre-rendered in a freeze-like manner before hitting PLAY or not? If the buffer is big enough, then maybe not.

One advantage of freezing or actual pre-rendering is that the DSP can be run ahead of time before hitting play, so that during playback the CPU is hardly doing anything, or least it can focus on other tasks that couldn't be pre-rendered.
if a track is an Aux, or a multi audio out Kontakt instrument, or an external instrument, or armed for recording, then freeze will not work, or at least has to render in real time.
Nothing ever renders in real time. But I get the point you're trying to make that *IF* there is some kind of pre-rendering going on...earlier then even the largest buffer would allow, then can AUX channels be pre-rendered too? I think that is a complicated question and its possible that in some cases yes it could be. If the DAW can determine that all of the source tracks feeding the AUX are pre-rendearable, then it could certainly pre-render the AUX channel too. That is pure theory, we don't really know what the DAW's are doing with pre-rendering exactly...
This is what I meant when I said that VEP is treated at least in DP like a live track, it's seen as an external instrument, and always operates in Real Time.
Nothing operates in actual real time. There is always a buffer and the computer works on the buffer at its own pace in non-real-time. VEP is also not seen as an "external instrument". Its an instrument plugin. Instrument plugins provide call back functions that the host can call to do whatever DSP they want to do and return the result to the host. VEP plugin works the same way except that it hands the work off to a separate process (or over the network), and may need more time (more latency) to do it, but its the same as any other instrument plugin in that regard. An external instrument has to send actual midi bytes over a midi cable and wait in real time for audio to come back. VEP does not work that way.
If Logic can address a track with more than one core that's a first to me, from my experience DAWs tend to assign cores to tracks. You can test this pretty easily, it's much much easier to overload a single track with your 12 core machine than it is to overload 12 tracks. Diva oddly enough is an exception, but it's multi core handling is assignable for a reason, because it can cause problems.
Well we don't really know what Logic or any of them are doing internally. But what I am saying is that Logic makes use of the full multi-core capability of the machine as best it can....when you are mixing down tracks. It may very well be that in many cases a single channel can only use one core at a time anyway, but Logic can do smart things with how it uses all the cores across channels, etc.. That is what VEP does too. But when Logic arms a track, it dedicates a core to that one track and that's it. this much we do know.
Yeah you must have glanced too quickly at my test results there no worries. :) Basically Reaper with tracks armed for recording or put in live mode etc. does really poorly, but it trashes DP and Logic with unarmed tracks. a drastic difference. It really does look like DP Logic and Reaper are all using vastly different methods of resource management, just looking at the massive differences in results I get arming or not arming tracks in them.
As I said before, my test did not involve any armed tracks...well.. unless I accidentally had Reaper tracks armed that is always possible. If so then I need to retest reaper. How do I make sure that not tracks are armed in reaper? But in any case, I can say that I was making every effort to make sure not to arm any tracks in all of the DAW's and in my results, Reaper did not trash Logic...so...
Lower CPU plug ins will give a more refined result, but over the years it's been my observation that it's not that big of a difference.
Lower CPU refinement is not the point. You would want to add a lot more tracks in order to get the CPU as high as possible and in your case you would want to try to find the "max" using lower CPU plugins. the point is that if the CPU is busy churning away on the plugins for most of it..then you aren't comparing the DAW's that much anymore. For example, if you're using 60% CPU and 55% of that is happening inside the Diva plugin, then whether you put Diva in Logic or Reaper, you're mainly seeing Diva's cpu performance. By using lower Cpu plugins and adding a lot more of them, then the DAW's actual mixer framework code will be using more of the CPU and you'll compare the two systems.

I guess in your case you don't actually care what the CPU% is, you want to push the system until it breaks. But still, you want to try to break the system from making the DAW itself work...not from making a dozen instances of Diva crank on the CPU. Hope that makes sense.
I can use something like Massive and you see a more unified result in some ways, in the sense that the 12 cores of my Mac Pro more evenly distribute the resources etc. The results are mostly consistent though, Reaper does the best by 10-20%, which is negligible to a degree. What is surprising is how badly DP and Logic did this time, generally Diva instances would hit 11, with the 12th one sharing resources with the DAW and crapping out.
Like I said, your results with Reaper do not match mine, and I'm not sure why at the moment. If the difference is that Reaper can max out to more tracks somehow then Logic can, ok...might be possible if you say so. What I can say is that in a real world situation playing 100 orchestral tracks, it was not trashing LogicPro, the other way around.

cheers
MacPro 5,1 12core x 3.46ghz-96gb MacOS 12.2 (opencore), X32+AES16e-50

Post

Dewdman42 wrote: Sat Sep 14, 2019 6:47 pm Getting into quite a bit of speculation there without insider knowledge about how these apps are coded. But I will just say that pre-rendering or larger buffers...its all kind of the same thing.
I don't think it is. I think buffering as a method is an extension of tricks like plug in delay compensation. The difference is the added buffer is so the CPU can compute the data in even longer time periods before spitting it out. With pre rendering everything is pointing to it being the equivalent of a hidden freeze file. So the whole thing or large chunks are rendered to a hidden file.

This is how these two technologies were explained to me. I reserve the right to be misinformed, but in terms of what I see with various DAWs and stress tests it pans out.
Whether tracks are pre-rendered before actually hitting play or not, is a question I don't think any of us really know, except for MOTU has included it as a stated feature in DP now. Perhaps Logic always did it, perhaps not, we don't really know. But in any case, I personally would have thought they ALL did it that way from the get go and I was shocked when MOTU released it as a relatively recent feature add.
Yep, Logic always has had really great buffering algorithms, that's how it was explained to me years ago. As a way of explaining why Ableton Live is a huge CPU pig and Logic is lean. Live polls all tracks for any and all possible changes, so its effectively forcing everything into a sort of real time performance mode, and it costs CPU. Logic only responds to active inpu. DP from what I can tell was raw, not much of a buffer until NextGen, and it I think does exactly what it says it does, renders amounts of a track to probably virtual RAM.
But here's the thing.. ALL plugin processing happens ahead of time, and not in real time. It operates on a buffer. If you make the buffer bigger, then you give the DAW and computer more time to service other processes, multi-tasking, for the DAW itself to service GUI issues, etc.. it can call the DSP code in whatever way it needs to...utilizing cores as best it can, for example... it provides more breathing room basically to multi-task all those different things. With a smaller buffer there is a lot less time and more possibility of a drop out occurring because DSP code could not complete in time. Its still rendered ahead. Does it really matter whether it was pre-rendered in a freeze-like manner before hitting PLAY or not? If the buffer is big enough, then maybe not.
For sure if you have a huge actual buffer you get massive amounts more CPU headroom, can't really play a soft synth etc. All these methods are ways around that. :)
Nothing ever renders in real time. But I get the point you're trying to make that *IF* there is some kind of pre-rendering going on...earlier then even the largest buffer would allow, then can AUX channels be pre-rendered too? I think that is a complicated question and its possible that in some cases yes it could be. If the DAW can determine that all of the source tracks feeding the AUX are pre-rendearable, then it could certainly pre-render the AUX channel too. That is pure theory, we don't really know what the DAW's are doing with pre-rendering exactly...
Mostly DAWs will not pre render or freeze tracks that are sending to Aux's, have multi audio out etc. That's what I was getting at, and this doesn't seem to be a problem for added buffering though, hence Logic looking great with VEP.

Nothing operates in actual real time. There is always a buffer and the computer works on the buffer at its own pace in non-real-time. VEP is also not seen as an "external instrument". Its an instrument plugin. Instrument plugins provide call back functions that the host can call to do whatever DSP they want to do and return the result to the host. VEP plugin works the same way except that it hands the work off to a separate process (or over the network), and may need more time (more latency) to do it, but its the same as any other instrument plugin in that regard. An external instrument has to send actual midi bytes over a midi cable and wait in real time for audio to come back. VEP does not work that way.
Sure, but most DAWs see VEP the same way, at least DP treats networked plug ins like VEP and UA etc. the same way it treats external instruments. I'm all in on the idea that Logic's smooth buffering is why it's handling VEP better than the others that are not able to pre render VEP tracks.
Well we don't really know what Logic or any of them are doing internally. But what I am saying is that Logic makes use of the full multi-core capability of the machine as best it can....when you are mixing down tracks. It may very well be that in many cases a single channel can only use one core at a time anyway, but Logic can do smart things with how it uses all the cores across channels, etc.. That is what VEP does too. But when Logic arms a track, it dedicates a core to that one track and that's it. this much we do know.
I've only been given clues:

One of the Logic developers used to stop by OSXaudio.com before it died as a forum, and iterated along with Urs Heckman that Logic was polling tracks etc. at a lower rate than Live, had a larger extra buffer on unarmed tracks etc. This added up to better CPU performance.

On a similar note MOTU guys stated at motunation that with NextGen PreGen™ (lol at the market speak!), it was much smarter to take instances of Kontakt and separate out instruments into their own tracks, since pregen would not work on multi out instruments, but would free up resources on single out Kontakt tracks. They mentioned that DP assigned CPU on a track by track basis and claimed that's how all DAWs do it. that you're not going to have a single track that has two CPUs working on it. So evenly distributing CPU heavy plug ins over tracks is smarter than stacking a single Kontakt instance with heavily scripted instruments. I "tested" :clown: this myself by loading a couple heavy duty Cinesample libraries into one Kontakt instance on one track and wondering why my CPU was crashing.. :lol:


As I said before, my test did not involve any armed tracks...well.. unless I accidentally had Reaper tracks armed that is always possible. If so then I need to retest reaper. How do I make sure that not tracks are armed in reaper? But in any case, in my results, Reaper did not trash Logic...so...
The red Record button on the track, should not be lit red. :)

Lower CPU refinement is not the point. You would want to add a lot more tracks in order to get the CPU as high as possible and in your case you would want to try to find the "max" using lower CPU plugins. the point is that if the CPU is busy churning away on the plugins for most of it..then you aren't comparing the DAW's that much anymore. For example, if you're using 60% CPU and 55% of that is happening inside the Diva plugin, then whether you put Diva in Logic or Reaper, you're mainly seeing Diva's cpu performance. By using lower Cpu plugins and adding a lot more of them, then the DAW's actual mixer framework code will be using more of the CPU and you'll compare the two systems.
Mostly what you get with heavier plug ins, is CPUs with no overhead left for other plug ins. I would be willing to bet though that I could load those 9 instances in DP and Logic with light CPU plug ins, because probably the CPUs are at 70-80%, enough to where they will not load any more instances of Diva. So in that sense you have a point, it's possible that Reaper in my tests is loading CPUs at a more refined rate than DP or Logic therefore getting more than 12 instances with it's Adaptive FX processing, but that it will not be able to handle as many extra FX on those same tracks.


Like I said, your results with Reaper do not match mine, and I'm not sure why at the moment. If the difference is that Reaper can max out to more tracks somehow then Logic can, ok...might be possible if you say so. What I can say is that in playing 100 tracks, it was not trashing LogicPro, the other way around.
Some of it is VEP, I do believe that Logics process 's for saving CPU is more friendly towards what are traditionally unfriendly processes (towards pre rendering) like VEP. I have VEP here, so I can test that as well, are you running it on the same or a separate machine?
Test Logic with a native plug in VS Reaper with Adaptive FX processing and I'm certain Reaper will beat Logic. It's not by enough to switch or anything, it's just interesting how all this stuff works to me. :)

Post Reply

Return to “Hosts & Applications (Sequencers, DAWs, Audio Editors, etc.)”