• 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
vp9dsp_init.c 14.2 KB