• 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
..
aarch64 Loading commit data...
arm Loading commit data...
avr32 Loading commit data...
bfin Loading commit data...
mips Loading commit data...
ppc Loading commit data...
sh4 Loading commit data...
tests Loading commit data...
tomi Loading commit data...
x86 Loading commit data...
.gitignore Loading commit data...
Makefile Loading commit data...
adler32.c Loading commit data...
adler32.h Loading commit data...
aes.c Loading commit data...
aes.h Loading commit data...
aes_ctr.c Loading commit data...
aes_ctr.h Loading commit data...
aes_internal.h Loading commit data...
atomic.c Loading commit data...
atomic.h Loading commit data...
atomic_gcc.h Loading commit data...
atomic_suncc.h Loading commit data...
atomic_win32.h Loading commit data...
attributes.h Loading commit data...
audio_fifo.c Loading commit data...
audio_fifo.h Loading commit data...
avassert.h Loading commit data...
avstring.c Loading commit data...
avstring.h Loading commit data...
avutil.h Loading commit data...
avutilres.rc Loading commit data...
base64.c Loading commit data...
base64.h Loading commit data...
blowfish.c Loading commit data...
blowfish.h Loading commit data...
bprint.c Loading commit data...
bprint.h Loading commit data...
bswap.h Loading commit data...
buffer.c Loading commit data...
buffer.h Loading commit data...
buffer_internal.h Loading commit data...
camellia.c Loading commit data...
camellia.h Loading commit data...
cast5.c Loading commit data...
cast5.h Loading commit data...
channel_layout.c Loading commit data...
channel_layout.h Loading commit data...
color_utils.c Loading commit data...
color_utils.h Loading commit data...
colorspace.h Loading commit data...
common.h Loading commit data...
cpu.c Loading commit data...
cpu.h Loading commit data...
cpu_internal.h Loading commit data...
crc.c Loading commit data...
crc.h Loading commit data...
des.c Loading commit data...
des.h Loading commit data...
dict.c Loading commit data...
dict.h Loading commit data...
display.c Loading commit data...
display.h Loading commit data...
downmix_info.c Loading commit data...
downmix_info.h Loading commit data...
dynarray.h Loading commit data...
error.c Loading commit data...
error.h Loading commit data...
eval.c Loading commit data...
eval.h Loading commit data...
ffmath.h Loading commit data...
fifo.c Loading commit data...
fifo.h Loading commit data...
file.c Loading commit data...
file.h Loading commit data...
file_open.c Loading commit data...
fixed_dsp.c Loading commit data...
fixed_dsp.h Loading commit data...
float_dsp.c Loading commit data...
float_dsp.h Loading commit data...
frame.c Loading commit data...
frame.h Loading commit data...
hash.c Loading commit data...
hash.h Loading commit data...
hmac.c Loading commit data...
hmac.h Loading commit data...
hwcontext.c Loading commit data...
hwcontext.h Loading commit data...
hwcontext_cuda.c Loading commit data...
hwcontext_cuda.h Loading commit data...
hwcontext_dxva2.c Loading commit data...
hwcontext_dxva2.h Loading commit data...
hwcontext_internal.h Loading commit data...
hwcontext_vaapi.c Loading commit data...
hwcontext_vaapi.h Loading commit data...
hwcontext_vdpau.c Loading commit data...
hwcontext_vdpau.h Loading commit data...
imgutils.c Loading commit data...
imgutils.h Loading commit data...
integer.c Loading commit data...
integer.h Loading commit data...
internal.h Loading commit data...
intfloat.h Loading commit data...
intmath.c Loading commit data...
intmath.h Loading commit data...
intreadwrite.h Loading commit data...
lfg.c Loading commit data...
lfg.h Loading commit data...
libavutil.v Loading commit data...
libm.h Loading commit data...
lls.c Loading commit data...
lls.h Loading commit data...
log.c Loading commit data...
log.h Loading commit data...
log2_tab.c Loading commit data...
lzo.c Loading commit data...
lzo.h Loading commit data...
macros.h Loading commit data...
mastering_display_metadata.c Loading commit data...
mastering_display_metadata.h Loading commit data...
mathematics.c Loading commit data...
mathematics.h Loading commit data...
md5.c Loading commit data...
md5.h Loading commit data...
mem.c Loading commit data...
mem.h Loading commit data...
mem_internal.h Loading commit data...
motion_vector.h Loading commit data...
murmur3.c Loading commit data...
murmur3.h Loading commit data...
opencl.c Loading commit data...
opencl.h Loading commit data...
opencl_internal.c Loading commit data...
opencl_internal.h Loading commit data...
opt.c Loading commit data...
opt.h Loading commit data...
parseutils.c Loading commit data...
parseutils.h Loading commit data...
pca.c Loading commit data...
pca.h Loading commit data...
pixdesc.c Loading commit data...
pixdesc.h Loading commit data...
pixelutils.c Loading commit data...
pixelutils.h Loading commit data...
pixfmt.h Loading commit data...
qsort.h Loading commit data...
random_seed.c Loading commit data...
random_seed.h Loading commit data...
rational.c Loading commit data...
rational.h Loading commit data...
rc4.c Loading commit data...
rc4.h Loading commit data...
replaygain.h Loading commit data...
reverse.c Loading commit data...
ripemd.c Loading commit data...
ripemd.h Loading commit data...
samplefmt.c Loading commit data...
samplefmt.h Loading commit data...
sha.c Loading commit data...
sha.h Loading commit data...
sha512.c Loading commit data...
sha512.h Loading commit data...
softfloat.h Loading commit data...
softfloat_tables.h Loading commit data...
stereo3d.c Loading commit data...
stereo3d.h Loading commit data...
tablegen.h Loading commit data...
tea.c Loading commit data...
tea.h Loading commit data...
thread.h Loading commit data...
threadmessage.c Loading commit data...
threadmessage.h Loading commit data...
time.c Loading commit data...
time.h Loading commit data...
time_internal.h Loading commit data...
timecode.c Loading commit data...
timecode.h Loading commit data...
timer.h Loading commit data...
timestamp.h Loading commit data...
tree.c Loading commit data...
tree.h Loading commit data...
twofish.c Loading commit data...
twofish.h Loading commit data...
utils.c Loading commit data...
version.h Loading commit data...
wchar_filename.h Loading commit data...
xga_font_data.c Loading commit data...
xga_font_data.h Loading commit data...
xtea.c Loading commit data...
xtea.h Loading commit data...