Subject: Re: [linux-audio-dev] MuCoS, Glame, API Issues
From: Richard Guenther (richard.guenther_AT_student.uni-tuebingen.de)
Date: pe maalis 10 2000 - 04:51:21 EST
On Thu, 9 Mar 2000, Paul Barton-Davis wrote:
> >> >No, the API looks very strange to me, especially the "host controlled"
> >> >LADSPA_Data * DataLocation per connection!? what is this for (see
> >> >alexanders question below, too)??
> >>
> >> so that the host can improve cache performance by reusing data
> >> buffers. if you leave buffer allocation to the plugins, the chances
> >> are that you will trash the cache every time you call a new one. given
> >> that people have noticed this effect in Csound quite easily (if you
> >> reuse variable names for multiple purposes, a Csound instrument
> >> typically runs noticeably faster), I feel confident in pointing out
> >> that this is a very real effect.
> >
> >How does host controlled allocation work, if you have sample generating
> >plugins? How does host controlled allocation work, f.i. on a resample
> >plugin? I dont see the point - if allocation is dedicated to the plugins
> >one can forward the buffer and do modifications in-place in every plugin,
> >this is more cache friendly than for each plugin having a seperate buffer
> >to read from and to write to.
>
> "host controlled allocation" doesn't specify any particular way of
> allocating buffers. it describes the division of responsibility. if
> plugins allocate their own buffers, their actions may not be optimal
> given the current global situation. if the host does it, it can
> (presumably) make the best decisions about how to allocate buffers and
> pass them around. whether it allocates one per plugin, makes them all
> share, or whatever else, is invisible to the plugins and should be
> assumed to be "taken care of" by plugin writers.
Umm, well who does know more about which kind of buffer it will need and
how to allocate/forward it most efficiently but the plugin itself???
Richard.
This archive was generated by hypermail 2b28 : su maalis 12 2000 - 09:14:06 EST