Re: mulithread rework
Con Kolivas <[email protected]>
| Newsgroups | gmane.comp.video.xvid.devel |
|---|---|
| Message-ID | <[email protected]> |
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