[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[abcde] Re: [patch] Improve parallelism on SMP systems



On Fri, Jan 25, 2002 at 07:29:02PM -0800, Steve Madsen wrote:
> The following patch is a first stab at fixing abcde 2.0.2 so that it makes 
> better use of SMP systems when MAXPROCS > 1.
> 
> The basic problem with stock 2.0.2 is that ENCODELOCATIONS gets constructed 
> with MAXPROCS %local% tokens.  When abcde tries to figure out if there is a 
> free encoding resource, it sees that one %local% is already encoding a 
> track, and goes into a sleep loop.
> 
> This patch fixes this by using %local1%, %local2%, etc., up to the setting 
> of MAXPROCS.  As long as there are available tracks waiting to be encoded, 
> it will spawn up to MAXPROCS encoders. The encoding process is always 
> backgrounded (not just for remote encoders), as well, so the main process 
> has a chance to loop around and start the next track if it can.

I arrived at an almost identical conclusion. The main difference is that I
haven't got my own code to work yet :)

> The only problem that I've found with this is that the output of the 
> encoders, once loud output is enabled, will get mixed up on-screen.  If I 
> come up with a clever way to fix this, I'll send another patch.

I don't think that's possible. It might be nice to set encode-output=loud
when there's just one local encode process, I'll have to check how feasible
that is. Otherwise, encoder output will just have to stay silent.

> Feedback would be appreciated.

I'm going to give this a hard look when I have some free time on Sunday,
hopefully I can get it merged with my other 2.0.3 fixes and get a release
out the door.
-- 
Robert Woodcock - rcw@debian.org
"Q: Do you know the name of the Defendant in this case?"
"A: I'm not sure. I'm just not sure."
	-- Jack Valenti, MPAA vs. 2600 depositions
To unsubscribe: echo unsubscribe | mail abcde-request@whimsica.lly.org