[FFmpeg-devel] [PATCH v2] avfilter/pthread: rewrite implementation

wm4 nfxjfg at googlemail.com
Mon Jul 10 11:53:42 EEST 2017


On Sat, 8 Jul 2017 01:45:06 +0200
Michael Niedermayer <michael at niedermayer.cc> wrote:

> On Fri, Jul 07, 2017 at 09:04:37PM +0700, Muhammad Faiz wrote:
> > Avoid pthread_cond_broadcast that wakes up all workers. Make each of them
> > uses distict mutex/cond. Also let main thread help running jobs.
> > 
> > Benchmark using afir with threads=5 and 4096 taps fir:
> > channels=1:
> > old:
> >     1849650 decicycles in afir_execute,       2 runs,      0 skips
> >     1525719 decicycles in afir_execute,    1024 runs,      0 skips
> >     1546032 decicycles in afir_execute,   16356 runs,     28 skips
> > new:
> >     1495525 decicycles in afir_execute,       2 runs,      0 skips
> >      968897 decicycles in afir_execute,    1024 runs,      0 skips
> >      941286 decicycles in afir_execute,   16384 runs,      0 skips
> > 
> > channels=2:
> > old:
> >     3135485 decicycles in afir_execute,       2 runs,      0 skips
> >     1967158 decicycles in afir_execute,    1024 runs,      0 skips
> >     1802430 decicycles in afir_execute,   16364 runs,     20 skips
> > new:
> >     1864750 decicycles in afir_execute,       2 runs,      0 skips
> >     1437792 decicycles in afir_execute,    1024 runs,      0 skips
> >     1183963 decicycles in afir_execute,   16382 runs,      2 skips
> > 
> > channels=4:
> > old:
> >     4879925 decicycles in afir_execute,       2 runs,      0 skips
> >     3557950 decicycles in afir_execute,    1022 runs,      2 skips
> >     3206843 decicycles in afir_execute,   16379 runs,      5 skips
> > new:
> >     2962320 decicycles in afir_execute,       2 runs,      0 skips
> >     2450430 decicycles in afir_execute,    1024 runs,      0 skips
> >     2446219 decicycles in afir_execute,   16383 runs,      1 skips
> > 
> > channels=8:
> > old:
> >     6032455 decicycles in afir_execute,       2 runs,      0 skips
> >     4838614 decicycles in afir_execute,    1023 runs,      1 skips
> >     4720760 decicycles in afir_execute,   16369 runs,     15 skips
> > new:
> >     5228150 decicycles in afir_execute,       2 runs,      0 skips
> >     4592129 decicycles in afir_execute,    1023 runs,      1 skips
> >     4469067 decicycles in afir_execute,   16383 runs,      1 skips  
> 
> this causes a strange change:
> 
> ./ffmpeg -i ~/videos/matrixbench_mpeg2.mpg  -vcodec libxavs  -vf scale=80x60 -t 1 file3.nut
> 
> results in different files before and after this patch. Neither plays
> i suspect this is not a bug in the patch but something odd elsewhere
> but i dont know

OK so you're saying there's no bug. Something changed, and you're too
lazy to investigate, but I guess he has all time in the world.

So why should he care?


More information about the ffmpeg-devel mailing list