• Ronald S. Bultje's avatar
    vp9: add 16x16 idct avx2 (8-bit). · f0a2b624
    Ronald S. Bultje authored
    checkasm --bench, 10k runs, for *_add_${bpc}_${sub_idct}_${opt}, shows
    that it's about 1.65x as fast as the AVX version for the full IDCT, and
    similar speedups for the sub-IDCTs:
    
    nop: 24.6
    vp9_inv_dct_dct_16x16_add_8_1_c: 6444.8
    vp9_inv_dct_dct_16x16_add_8_1_sse2: 638.6
    vp9_inv_dct_dct_16x16_add_8_1_ssse3: 484.4
    vp9_inv_dct_dct_16x16_add_8_1_avx: 661.2
    vp9_inv_dct_dct_16x16_add_8_1_avx2: 311.5
    vp9_inv_dct_dct_16x16_add_8_2_c: 6665.7
    vp9_inv_dct_dct_16x16_add_8_2_sse2: 646.9
    vp9_inv_dct_dct_16x16_add_8_2_ssse3: 455.2
    vp9_inv_dct_dct_16x16_add_8_2_avx: 521.9
    vp9_inv_dct_dct_16x16_add_8_2_avx2: 304.3
    vp9_inv_dct_dct_16x16_add_8_4_c: 7022.7
    vp9_inv_dct_dct_16x16_add_8_4_sse2: 647.4
    vp9_inv_dct_dct_16x16_add_8_4_ssse3: 467.1
    vp9_inv_dct_dct_16x16_add_8_4_avx: 446.1
    vp9_inv_dct_dct_16x16_add_8_4_avx2: 297.0
    vp9_inv_dct_dct_16x16_add_8_8_c: 6800.4
    vp9_inv_dct_dct_16x16_add_8_8_sse2: 598.6
    vp9_inv_dct_dct_16x16_add_8_8_ssse3: 465.7
    vp9_inv_dct_dct_16x16_add_8_8_avx: 440.9
    vp9_inv_dct_dct_16x16_add_8_8_avx2: 290.2
    vp9_inv_dct_dct_16x16_add_8_16_c: 6626.6
    vp9_inv_dct_dct_16x16_add_8_16_sse2: 599.5
    vp9_inv_dct_dct_16x16_add_8_16_ssse3: 475.0
    vp9_inv_dct_dct_16x16_add_8_16_avx: 469.9
    vp9_inv_dct_dct_16x16_add_8_16_avx2: 286.4
    f0a2b624
Name
Last commit
Last update
..
Makefile Loading commit data...
asm.h Loading commit data...
bswap.h Loading commit data...
cpu.c Loading commit data...
cpu.h Loading commit data...
cpuid.asm Loading commit data...
emms.asm Loading commit data...
emms.h Loading commit data...
fixed_dsp.asm Loading commit data...
fixed_dsp_init.c Loading commit data...
float_dsp.asm Loading commit data...
float_dsp_init.c Loading commit data...
intmath.h Loading commit data...
intreadwrite.h Loading commit data...
lls.asm Loading commit data...
lls_init.c Loading commit data...
pixelutils.asm Loading commit data...
pixelutils.h Loading commit data...
pixelutils_init.c Loading commit data...
timer.h Loading commit data...
w64xmmtest.h Loading commit data...
x86inc.asm Loading commit data...
x86util.asm Loading commit data...