[gmpi] Re: Topic 7: Audio packaging, Process-In-Place

  • From: Bill Gardner <billg@xxxxxxxxxxxx>
  • To: gmpi@xxxxxxxxxxxxx
  • Date: Fri, 30 May 2003 14:55:25 -0400

At 11:23 AM 5/30/03 -0700, you wrote:

If you do enforce ordering, you can share inputs, and just force the one
that will overwrite the input to run last.

Which is more expensive?  copying the buffer or enforcing ordering?  Almost
certainly the buffer copy.

On these points I agree completely.


Baton-passing is not dead yet. With baton-passing, you can avoid the memcpy
(which is the most expensive bit) by making all branches of a Y be
read-only.  Yes, you won't get process-in-place, but you have no extraneous
buffer copying.

Slightly better is to have the plug tell the host whether it will run in-place or not, then the host can decide how to order execution coming out of a Y, running a non-in-place plug first, then the in-place plug. If both are in-place a copy has to be made before running either. If both are not-in-place then it's moot.


Still better is to have the host decide whether the plugs will run in-place or not. This is the point that Steve and I have been making.

Bill



----------------------------------------------------------------------
Generalized Music Plugin Interface (GMPI) public discussion list
Participation in this list is contingent upon your abiding by the
following rules:  Please stay on topic.  You are responsible for your own
words.  Please respect your fellow subscribers.  Please do not
redistribute anyone else's words without their permission.

Archive: //www.freelists.org/archives/gmpi
Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to unsubscribe

Other related posts: