[FFmpeg-devel] [PATCH v2 4/5] libavfilter/x86/vf_gblur: add localbuf and ff_horiz_slice_avx2/512()

"zhilizhao(赵志立)" quinkblack at foxmail.com
Fri Sep 10 18:26:01 EEST 2021


Hi Wu,

> On Aug 4, 2021, at 10:06 AM, Wu Jianhua <jianhua.wu at intel.com> wrote:
> 
> We introduced a ff_horiz_slice_avx2/512() implemented on a new algorithm.
> In a nutshell, the new algorithm does three things, gathering data from
> 8/16 rows, blurring data, and scattering data back to the image buffer.
> Here we used a customized transpose 8x8/16x16 to avoid the huge overhead
> brought by gather and scatter instructions, which is dependent on the
> temporary buffer called localbuf added newly.
> 

I get fate error related to the patch:

make fate-checkasm-vf_gblur

checkasm: using random seed 227700911
SSE:
 - vf_gblur.postscale_slice [OK]
SSE4.1:
 - vf_gblur.horiz_slice     [OK]
test failed comparing 297.388 with 190 (abs diff=107.388 with EPS=0.01)
AVX2:
   horiz_slice_avx2 (vf_gblur.c:47)
 - vf_gblur.horiz_slice     [FAILED]
 - vf_gblur.postscale_slice [OK]
src/tests/fate-run.sh: line 78: 40217 Illegal instruction: 4  $target_exec $target_path/"$@“

The last one "Illegal instruction: 4” exist before the patch.

I have tested on two macbook: mbp 2015 and MacBook Pro (16-inch, 2019).
The test succeed on Ubuntu.


More information about the ffmpeg-devel mailing list