1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-02 03:06:28 +02:00
FFmpeg/tests/checkasm
John Cox 697533e76d avfilter/vf_bwdif: Add a filter_line3 method for optimisation
Add an optional filter_line3 to the available optimisations.

filter_line3 is equivalent to filter_line, memcpy, filter_line

filter_line shares quite a number of loads and some calculations in
common with its next iteration and testing shows that using aarch64
neon filter_line3s performance is 30% better than two filter_lines
and a memcpy.

Adds a test for vf_bwdif filter_line3 to checkasm

Rounds job start lines down to a multiple of 4. This means that if
filter_line3 exists then filter_line will not sometimes be called
once at the end of a slice depending on thread count. The final slice
may do up to 3 extra lines but filter_edge is faster than filter_line
so it is unlikely to create any noticable thread load variation.

Signed-off-by: John Cox <jc@kynesim.co.uk>
Signed-off-by: Martin Storsjö <martin@martin.st>
2023-07-06 00:21:05 +03:00
..
aarch64 checkasm: aarch64: Check for stack overflows 2020-05-15 21:22:36 +03:00
arm checkasm: arm: Check for stack overflows 2020-05-15 21:22:34 +03:00
riscv checkasm: RISC-V 64-bit assembler test harness 2022-10-10 02:23:18 +02:00
x86 x86: replace explicit REP_RETs with RETs 2023-02-01 04:23:55 +01:00
.gitignore Split global .gitignore file into per-directory files 2016-05-13 14:55:56 +02:00
aacpsdsp.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
af_afir.c avfilter/af_afir: Only keep DSP stuff in header 2022-05-06 05:19:49 +02:00
alacdsp.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
audiodsp.c checkasm/audiodsp: Be strict about MMX 2022-10-11 14:18:54 +02:00
av_tx.c x86/tx_float: add 15xN PFA FFT AVX SIMD 2022-09-23 12:35:27 +02:00
blockdsp.c checkasm/blockdsp: Be strict about MMX 2022-10-11 14:18:54 +02:00
bswapdsp.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
checkasm.c aarch64: Add cpu flags for the dotprod and i8mm extensions 2023-06-06 12:40:42 +03:00
checkasm.h checkasm: add h264chroma tests 2023-05-20 20:07:21 +02:00
exrdsp.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
fixed_dsp.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
flacdsp.c avcodec/flacdsp: Remove unused function parameter 2022-08-05 03:28:45 +02:00
float_dsp.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
fmtconvert.c avcodec/fmtconvert: Remove unused AVCodecContext parameter 2022-09-21 20:26:40 +02:00
g722dsp.c checkasm: add a g722dsp test 2017-07-13 17:00:19 -03:00
h264chroma.c checkasm: add h264chroma tests 2023-05-20 20:07:21 +02:00
h264dsp.c lavc/h264: move some shared code from h264dec to h264_parse 2022-01-26 15:23:30 +01:00
h264pred.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
h264qpel.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
hevc_add_res.c checkasm: pass context as pointer 2023-04-13 15:17:04 +03:00
hevc_deblock.c checkasm: pass context as pointer 2023-04-13 15:17:04 +03:00
hevc_idct.c checkasm: pass context as pointer 2023-04-13 15:17:04 +03:00
hevc_pel.c checkasm/hevc_pel: Fix stack buffer overreads 2021-09-29 04:35:31 +02:00
hevc_sao.c checkasm: pass context as pointer 2023-04-13 15:17:04 +03:00
huffyuvdsp.c checkasm: pass context as pointer 2023-04-13 15:17:04 +03:00
idctdsp.c checkasm/idctdsp: Use declare_func_emms only when needed 2022-10-11 14:18:54 +02:00
jpeg2000dsp.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
llviddsp.c checkasm: pass context as pointer 2023-04-13 15:17:04 +03:00
llviddspenc.c checkasm/llviddspenc: Use declare_func_emms only when needed 2022-10-11 14:18:54 +02:00
lpc.c tests/checkasm/lpc: correct arithmetic when randomizing buffers 2022-09-23 01:50:59 +02:00
Makefile checkasm: add h264chroma tests 2023-05-20 20:07:21 +02:00
motion.c checkasm: motion: Test different h parameters 2022-08-17 00:00:50 +03:00
opusdsp.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
pixblockdsp.c checkasm/pixblockdsp: Be strict about MMX 2022-10-11 14:18:54 +02:00
sbrdsp.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
sw_gbrp.c swscale/x86/input.asm: add x86-optimized planer rgb2yuv functions 2022-01-11 16:34:33 -03:00
sw_rgb.c Remove unnecessary mem.h inclusions 2021-07-22 14:47:57 +02:00
sw_scale.c checkasm: sw_scale: Produce more realistic test filter coefficients for yuv2yuvX 2022-08-19 22:54:51 +03:00
synth_filter.c dca_core: convert to lavu/tx 2022-11-06 14:39:36 +01:00
utvideodsp.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
v210dec.c checkasm/v210dec: add extra space to the destination arrays 2022-12-21 00:36:49 +01:00
v210enc.c checkasm/v210enc: test the entire width of 10-bit planar input arrays 2022-12-01 18:19:03 +01:00
vc1dsp.c checkasm/vc1dsp: Use declare_func_emms only when needed 2022-10-11 14:18:54 +02:00
vf_blend.c avfilter/vf_blend: Move ff_blend_init into a header 2022-05-06 05:19:49 +02:00
vf_bwdif.c avfilter/vf_bwdif: Add a filter_line3 method for optimisation 2023-07-06 00:21:05 +03:00
vf_colorspace.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
vf_convolution.c libavfilter/x86/vf_convolution: add sobel filter optimization and unit test with intel AVX512 VNNI 2022-11-14 10:04:16 +08:00
vf_eq.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
vf_gblur.c avfilter/vf_gblur: Move ff_gblur_init into a header 2022-05-06 05:19:49 +02:00
vf_hflip.c avfilter/vf_hflip: Move ff_hflip_init into a header 2022-05-06 05:19:50 +02:00
vf_nlmeans.c avfilter/vf_nlmeans: Move ff_nlmeans_init into a header 2022-05-06 05:19:50 +02:00
vf_threshold.c avfilter/vf_threshold: Move ff_threshold_init into a header 2022-05-06 05:19:50 +02:00
videodsp.c lavu: move LOCAL_ALIGNED from internal.h to mem_internal.h 2021-01-01 14:11:01 +01:00
vorbisdsp.c tests/checkasm: add a test for VorbisDSPContext 2022-09-19 21:28:23 -03:00
vp8dsp.c checkasm/vp8dsp: Use declare_func_emms only when needed 2022-10-08 09:33:36 +02:00
vp9dsp.c checkasm/vp9dsp: rename the iszero function to is_zero 2021-06-08 13:11:22 -03:00