View Issue Details

IDProjectCategoryView StatusLast Update
0003833ardourbugspublic2011-03-15 22:21
Reportersteph5150 Assigned Tosteph5150  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Target Version3.0-beta1 
Summary0003833: DSP gets high with little number of audio/midi tracks (causing lots of xruns) in Ardour3.0 svn 9084
DescriptionHi,

1st recipe :

- Add some midi tracks (3 in my case), edit them or record into them (chords, drums, bass) and patch their midi outputs to some external software synths (vst synths launched with fst in my case),
- Patch the outputs of the synths to some audio busses in ardour (audio level control is nice while mixing),
- Add 3 4bands-eq (lv2fil), 2 compressors (SC4 and Invada)...
- Playback the thing, you will hear lots of crackles and view lots of xruns in qjackctl.

2nd recipe (simpler):

- Import 1 stereo track, say your other favorite tune...
- Add a bunch of empty midi tracks, say 64, and I really mean EMPTY.
- Push PLAY, tons of crackles/xruns.

New thing constated :
When you run ardour3 from a terminal and it's playing a sample project with audio/midi tracks, there's a lot of new outputs in the terminal. It looks like this :
monitor will monitor ? 1
master will monitor ? 1
monitormaster POB, should declick ? 0
 POB, should declick ? 0
Bus 3Bus 1 will monitor ? Midi 2 will monitor ? Midi 3 will monitor ? 1
.....and so on...

What I have tried :
Launch ardour3 in a terminal with the command "ardour3 > /dev/null 2>&1"
redirecting stdout to /dev/null.
This reduces a lot the problem and the overall performance is then much closer to the performance of svn 9052 I've tried before, but it's not perfect, still some xruns while it plays at session end or playing looped (at end of loop).

Have a good day...
steph.
.
TagsNo tags attached.

Relationships

related to 0003650 new DSP usage is double compared to Ardour2 

Activities

steph5150

2011-03-07 11:48

reporter   ~0010304

Additional notes :

Those test were made with 2*128 samples buffer.
If I set it to 2*256 it eliminates the problem in the first case (first recipe).
I got to set it to 2*512 in the second case but DSP is still at 50%.
Wathever you choose from "1 processor" to "all available processors" in "signal processing uses" it doesn't change anything. Does the Midi stuffs are only processed by 1 processor/half-core ?

steph5150

2011-03-07 11:50

reporter   ~0010305

Click PANIC button with 2*128 buffer and ardour3 crashes.
With higher buffer ther's no problem.

steph5150

2011-03-07 15:57

reporter   ~0010309

Huge amount of output to stdout seems to be related to changes in route.cc concerning monitor.

Only difference except stdout thing and function call :

old version:
------------
{
    bool monitor;

    bufs.is_silent (false);

    switch (Config->get_monitoring_model()) {
    case HardwareMonitoring:
    case ExternalMonitoring:
        monitor = !record_enabled() || (_session.config.get_auto_input() && !_session.actively_recording());
        break;
    default:
        monitor = true;
    }
----------

New one:
----------
{
    switch (Config->get_monitoring_model()) {
    case HardwareMonitoring:
    case ExternalMonitoring:
                return !record_enabled() || (_session.config.get_auto_input() && !_session.actively_recording());
        break;
    default:
                break;
    }

        return true;
}
--------
The line after "default :" is:

old one: monitor = true;
new one: break;

I'm probably stupid but I don't see the point of this mod...

cth103

2011-03-07 15:58

administrator   ~0010310

I have put the panic bug into a seperate report (0003838). The xruns should be improved in current SVN (debugging messages are quite likely to produce them).

steph5150

2011-03-07 18:25

reporter   ~0010313

Thanks cth103.

steph5150

2011-03-07 18:57

reporter   ~0010315

SVN 9096 have quite the same performance result than 9052 so it is indeed better.

But the PANIC button bug is still there (with 2*128 samples buffer), when you click PANIC ardour3 craches.

steph5150

2011-03-15 22:20

reporter   ~0010365

As the performance lost was due to debug messages, and those debug messages has been removed from sources, I think we can close this one...

The CPU consumption in ardour3 compared to ardour2 may/could be re-discussed in another report.

Closing this one. Resolved

Issue History

Date Modified Username Field Change
2011-03-07 00:28 steph5150 New Issue
2011-03-07 00:51 cth103 cost => 0.00
2011-03-07 00:51 cth103 Target Version => 3.0-beta1
2011-03-07 00:51 cth103 Relationship added related to 0003650
2011-03-07 11:48 steph5150 Note Added: 0010304
2011-03-07 11:50 steph5150 Note Added: 0010305
2011-03-07 15:57 steph5150 Note Added: 0010309
2011-03-07 15:58 cth103 Note Added: 0010310
2011-03-07 18:25 steph5150 Note Added: 0010313
2011-03-07 18:57 steph5150 Note Added: 0010315
2011-03-15 22:20 steph5150 Note Added: 0010365
2011-03-15 22:21 steph5150 Status new => resolved
2011-03-15 22:21 steph5150 Resolution open => fixed
2011-03-15 22:21 steph5150 Assigned To => steph5150
2011-03-15 22:21 steph5150 Status resolved => closed