FFmpeg/libavutil/x86
Jun Zhao d36b8394f4 avutil/pixelutils: sad_32x32 sse2/avx2 optimizations.
add ff_pixelutils_sad_32x32_sse2, ff_pixelutils_sad_{a,u}_32x32_sse2,
ff_pixelutils_sad_32x32_avx22, ff_pixelutils_sad_{a,u}_32x32_avx2

use perf record/report profiling, get instructions:u for avx2 sad_32x32:

  72.05%  pixelutils  pixelutils     [.] block_sad_32x32_c
  18.50%  pixelutils  pixelutils     [.] block_sad_16x16_c
   4.78%  pixelutils  pixelutils     [.] block_sad_8x8_c
   2.69%  pixelutils  pixelutils     [.] block_sad_4x4_c
   0.89%  pixelutils  pixelutils     [.] block_sad_2x2_c
   0.16%  pixelutils  pixelutils     [.] ff_pixelutils_sad_32x32_avx2
   0.16%  pixelutils  pixelutils     [.] ff_pixelutils_sad_u_32x32_avx2
   0.12%  pixelutils  pixelutils     [.] ff_pixelutils_sad_a_32x32_avx2

sse2 sad_32x32 instructions:u like:

  71.86%  pixelutils  pixelutils     [.] block_sad_32x32_c
  18.42%  pixelutils  pixelutils     [.] block_sad_16x16_c
   4.81%  pixelutils  pixelutils     [.] block_sad_8x8_c
   2.68%  pixelutils  pixelutils     [.] block_sad_4x4_c
   0.88%  pixelutils  pixelutils     [.] block_sad_2x2_c
   0.29%  pixelutils  pixelutils     [.] ff_pixelutils_sad_32x32_sse2
   0.26%  pixelutils  pixelutils     [.] ff_pixelutils_sad_u_32x32_sse2
   0.23%  pixelutils  pixelutils     [.] ff_pixelutils_sad_a_32x32_sse2

Signed-off-by: Jun Zhao <mypopydev@gmail.com>
2018-07-31 19:17:51 +08:00
..
asm.h asm: FF_-prefix internal macros used in inline assembly 2016-06-27 17:21:18 +02:00
bswap.h avutil/x86/bswap: Remove warning about bswap intrinsics with msvc. 2015-11-23 23:03:32 +11:00
cpu.c lavu/x86/cpu: Fix aesni detection 2018-07-19 20:17:44 +02:00
cpu.h Merge commit '4cf84e254a' 2018-02-11 23:08:48 -03:00
cpuid.asm
emms.asm Merge commit '7911186ed6' 2017-03-23 18:28:56 -03:00
emms.h Merge commit '7911186ed6' 2017-03-23 18:28:56 -03:00
fixed_dsp.asm x86/fixed_dsp: add ff_butterflies_fixed_sse2 2016-01-16 21:09:38 -03:00
fixed_dsp_init.c x86/fixed_dsp: add ff_butterflies_fixed_sse2 2016-01-16 21:09:38 -03:00
float_dsp.asm x86/float_dsp: remove usage of integer instructions 2017-05-12 23:34:49 -03:00
float_dsp_init.c x86/float_dsp: add ff_vector_fmul_reverse_avx2 2017-04-11 21:35:35 -03:00
imgutils.asm Merge commit '6be7944ee2' 2017-03-23 18:05:27 -03:00
imgutils_init.c Merge commit 'd7bc52bf45' 2017-03-20 08:34:10 +01:00
intmath.h Don't use _tzcnt instrinics with clang for windows w/o BMI. 2017-10-25 21:50:37 +02:00
intreadwrite.h
lls.asm lavu/x86/lls: add fma3 optimizations for update_lls 2016-01-15 16:46:13 -05:00
lls_init.c x86: use the new helper macros where useful 2016-02-14 20:00:21 -03:00
Makefile build: Generalize yasm/nasm-related variable names 2017-06-21 17:00:29 -03:00
pixelutils.asm avutil/pixelutils: sad_32x32 sse2/avx2 optimizations. 2018-07-31 19:17:51 +08:00
pixelutils.h
pixelutils_init.c avutil/pixelutils: sad_32x32 sse2/avx2 optimizations. 2018-07-31 19:17:51 +08:00
timer.h Merge commit 'd1a6cb195f' 2015-07-09 12:28:09 +02:00
w64xmmtest.h all: Add missing header guards 2016-01-28 19:49:48 -08:00
x86inc.asm x86inc: Drop cpuflags_slowctz 2018-01-20 19:23:37 +01:00
x86util.asm avutil/x86util : add macro for loading a 128 bits constants in an xmm or in each part of an ymm in order to simplify avx2 asm func 2017-12-02 18:25:15 +01:00