• Lynne's avatar
    lavu/tx: optimize and simplify inverse MDCTs · ae66a9db
    Lynne authored
    Convert the input from a scatter to a gather instead,
    which is faster and better for SIMD.
    Also, add a pre-shuffled exptab version to avoid
    gathering there at all. This doubles the exptab size,
    but the speedup makes it worth it. In SIMD, the
    exptab will likely be purged to a higher cache
    anyway because of the FFT in the middle, and
    the amount of loads stays identical.
    
    For a 960-point inverse MDCT, the speedup is 10%.
    
    This makes it possible to write sane and fast SIMD
    versions of inverse MDCTs.
    ae66a9db
Name
Last commit
Last update
..
aarch64 Loading commit data...
arm Loading commit data...
avr32 Loading commit data...
bfin Loading commit data...
loongarch 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...
attributes.h Loading commit data...
audio_fifo.c Loading commit data...
audio_fifo.h Loading commit data...
avassert.h Loading commit data...
avsscanf.c 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...
csp.c Loading commit data...
csp.h Loading commit data...
cuda_check.h Loading commit data...
des.c Loading commit data...
des.h Loading commit data...
detection_bbox.c Loading commit data...
detection_bbox.h Loading commit data...
dict.c Loading commit data...
dict.h Loading commit data...
display.c Loading commit data...
display.h Loading commit data...
dovi_meta.c Loading commit data...
dovi_meta.h Loading commit data...
downmix_info.c Loading commit data...
downmix_info.h Loading commit data...
dynarray.h Loading commit data...
encryption_info.c Loading commit data...
encryption_info.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...
film_grain_params.c Loading commit data...
film_grain_params.h 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...
getenv_utf8.h Loading commit data...
hash.c Loading commit data...
hash.h Loading commit data...
hdr_dynamic_metadata.c Loading commit data...
hdr_dynamic_metadata.h Loading commit data...
hdr_dynamic_vivid_metadata.c Loading commit data...
hdr_dynamic_vivid_metadata.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_cuda_internal.h Loading commit data...
hwcontext_d3d11va.c Loading commit data...
hwcontext_d3d11va.h Loading commit data...
hwcontext_drm.c Loading commit data...
hwcontext_drm.h Loading commit data...
hwcontext_dxva2.c Loading commit data...
hwcontext_dxva2.h Loading commit data...
hwcontext_internal.h Loading commit data...
hwcontext_mediacodec.c Loading commit data...
hwcontext_mediacodec.h Loading commit data...
hwcontext_opencl.c Loading commit data...
hwcontext_opencl.h Loading commit data...
hwcontext_qsv.c Loading commit data...
hwcontext_qsv.h Loading commit data...
hwcontext_stub.c 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...
hwcontext_videotoolbox.c Loading commit data...
hwcontext_videotoolbox.h Loading commit data...
hwcontext_vulkan.c Loading commit data...
hwcontext_vulkan.h Loading commit data...
imgutils.c Loading commit data...
imgutils.h Loading commit data...
imgutils_internal.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...
macos_kperf.c Loading commit data...
macos_kperf.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...
objc.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...
reverse.h 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...
slicethread.c Loading commit data...
slicethread.h Loading commit data...
softfloat.h Loading commit data...
softfloat_ieee754.h Loading commit data...
softfloat_tables.h Loading commit data...
spherical.c Loading commit data...
spherical.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...
tx.c Loading commit data...
tx.h Loading commit data...
tx_double.c Loading commit data...
tx_float.c Loading commit data...
tx_int32.c Loading commit data...
tx_priv.h Loading commit data...
tx_template.c Loading commit data...
utils.c Loading commit data...
uuid.c Loading commit data...
uuid.h Loading commit data...
version.c Loading commit data...
version.h Loading commit data...
version_major.h Loading commit data...
video_enc_params.c Loading commit data...
video_enc_params.h Loading commit data...
vulkan.c Loading commit data...
vulkan.h Loading commit data...
vulkan_functions.h Loading commit data...
vulkan_glslang.c Loading commit data...
vulkan_loader.h Loading commit data...
vulkan_shaderc.c 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...