[XviD-devel] mulithread rework

Con Kolivas kernel at kolivas.org
Thu Apr 24 12:48:25 CEST 2008


On Thu, 24 Apr 2008 20:41:50 iibot wrote:
> Con Kolivas schrieb:
> > On Wed, 23 Apr 2008 17:37:09 iibot wrote:
> >> If possible you could try to change when a thread starts working again
> >> by setting it to use larger sets of macroblocks, i.e. only start when
> >> the above row has proceeded by k blocks (and not 1 as in current code).
> >> This alone will make things worse but together with setting more threads
> >> (at least 2x number of cores) I guess there will be enough additional
> >> work for the CPUs to do.
> >
> > Unfortunately that's worse.
>
> Did you try it?

Yes I did. That's why I said "it's worse" rather than "I think that will be 
worse".

No matter how many threads I throw at 4 cores with any change to this current 
mode of parallelling the work, I cannot get more than about a 30% throughput 
improvement over single threaded, which is what the original code does. A 
different model for spreading work around is required; the dependence of each 
thread effectively on the first thread progressing is the rate limiting 
component.

I consider this experiment over. Thanks everyone for your replies, and I'm 
sorry I couldn't find something useful.

-- 
-ck


More information about the XviD-devel mailing list