mixxxdj / mixxx

Mixxx is Free DJ software that gives you everything you need to perform live mixes.
http://mixxx.org
Other
4.5k stars 1.28k forks source link

samplers do not scale well #8919

Open mixxxbot opened 2 years ago

mixxxbot commented 2 years ago

Reported by: Be-ing Date: 2017-08-01T18:49:46Z Status: Triaged Importance: Medium Launchpad Issue: lp1707991


Deere and Tango now can show 64 samplers. In regards to the engine, 64 samplers is no big deal if samplers can't be assigned to effects, but loading the skin widgets for 64 samplers is a major bottleneck for Mixxx's startup and shutdown times. If you comment out the whole sampler template in Deere or Tango they load and shut down much faster. Using completely separate templates for collapsed and expanded sampler views exacerbates this. Let's decide on which sampler features are strictly necessary to show in skins. We can keep the collapsed/expanded view toggling, but the expanded view should show a secondary WidgetGroup below what is shown in the collapsed view, not replace the whole sampler with a different WidgetGroup.

mixxxbot commented 2 years ago

Commented by: daschuer Date: 2017-08-02T11:43:25Z


Aren't collapsed regions parsed anyway? I am afraid we can only slice this by introducing a michanism that allows to skip skin regions by a preferences option or something. An other idea is to allow to duplicate an ready initialised widget in memory. Mmm .. all a lot of work.

mixxxbot commented 2 years ago

Commented by: Be-ing Date: 2017-08-03T00:58:41Z


Aren't collapsed regions parsed anyway?

Yes.

An other idea is to allow to duplicate an ready initialised widget in memory. Mmm .. all a lot of work.

The sampler rows are already in singleton widgets.

I think if we remove widgets from the samplers this could work. Every widget that is added to the sampler template is instantiated 64 times. Even if we reduce the number of samplers to 32 or 16 or 8 we still have issues with scaling.

mixxxbot commented 2 years ago

Commented by: ronso0 Date: 2017-08-03T17:54:35Z


What do you mean by much faster?

With 64 samplers mixxx is ready in 12sec, with just 8 samplers it takes 10sec.

mixxxbot commented 2 years ago

Commented by: Be-ing Date: 2017-08-03T18:39:52Z


What do you mean by much faster?

Running mixxx with --logLevel debug and Tango, it takes about 10 seconds to delete the skin (measured by the time reported with "deleting menubar"). Removing everything but the