[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