[FFmpeg-devel] avfilter/vf_interlace : add checkasm for lowpass_line and AVX2 version

Martin Vignali martin.vignali at gmail.com
Sat Dec 16 15:17:00 EET 2017


Hello,

In attach patch to add a checkasm test, for lowpass_line (8 and 16)
and AVX2 version for lowpass_line (8 and 16)


001 : Modify init part of vf_interlace (add ff_interlace_init
and modify ff_interlace_init_x86)

002 : Checkasm test for lowpass_line
can be test with
./tests/checkasm/checkasm --test=vf_interlace --bench
or
make fate-checkasm

003 : AVX2 version for lowpass_line (8 and 16)


For the checkasm test, i add an align test (related to ticket 6491)
but i only "unalign" the "mref value" (if i unalign src in this test, i
have a crash)
I can't find a "real" filter command line who reproduce the same crash
(if someone have a command line example for that, i will modify the
checkasm and the asm)

Checkasm result : (in my tests the AVX version is always slower, than SSE
version (not sure it's interested to keep AVX version)

./tests/checkasm/checkasm --test=vf_interlace --bench

benchmarking with native FFmpeg timers
nop: 36.2
checkasm: using random seed 1323076929
SSE2:
 - vf_interlace.lowpass_line_8  [OK]
 - vf_interlace.lowpass_line_16 [OK]
AVX:
 - vf_interlace.lowpass_line_8  [OK]
 - vf_interlace.lowpass_line_16 [OK]
AVX2:
 - vf_interlace.lowpass_line_8  [OK]
 - vf_interlace.lowpass_line_16 [OK]
checkasm: all 6 tests passed
lowpass_line_8_c: 311.2
lowpass_line_8_sse2: 44.4
lowpass_line_8_avx: 46.9
lowpass_line_8_avx2: 26.7
lowpass_line_16_c: 182.9
lowpass_line_16_sse2: 44.4
lowpass_line_16_avx: 48.4
lowpass_line_16_avx2: 28.2


Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-avfilter-vf_interlace-move-func-init-in.patch
Type: application/octet-stream
Size: 3751 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20171216/815ddd37/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-checkasm-vf_interlace-add-test-for-lowpass_line-8-an.patch
Type: application/octet-stream
Size: 5789 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20171216/815ddd37/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-avfilter-vf_interlace-add-AVX2-for-lowpass_line-8-an.patch
Type: application/octet-stream
Size: 2972 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20171216/815ddd37/attachment-0002.obj>


More information about the ffmpeg-devel mailing list