ffmpeg/libavutil/x86
Alan Kelly f4b044bbe3 swscale: Disable avx2 hscale 8to15 on IceLake and below due to Intel Gather Data Sampling mitigation performance loss
Intel provided a microcode update to mitigate this security
    vulnerability which has a huge negative performance impact on gather
    instructions. This means that hscale 8to15 avx2, which uses gather
    extensively, is no longer faster than SSSE3 on impacted CPUs.

    https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/technical-documentation/gather-data-sampling.html

    Broadwell:
    hscale_8_to_15__fs_4_dstW_512_c:                      3379.5 ( 1.00x)
    hscale_8_to_15__fs_4_dstW_512_sse2:                    615.7 ( 5.49x)
    hscale_8_to_15__fs_4_dstW_512_ssse3:                   613.4 ( 5.51x)
    hscale_8_to_15__fs_4_dstW_512_avx2:                    495.7 ( 6.82x)

    Skylake:
    hscale_8_to_15__fs_4_dstW_512_c:                      3411.4 ( 1.00x)
    hscale_8_to_15__fs_4_dstW_512_sse2:                    591.0 ( 5.77x)
    hscale_8_to_15__fs_4_dstW_512_ssse3:                   591.5 ( 5.77x)
    hscale_8_to_15__fs_4_dstW_512_avx2:                   1386.2 ( 2.46x)

    Cascade Lake:
    hscale_8_to_15__fs_4_dstW_512_c:                      3231.3 ( 1.00x)
    hscale_8_to_15__fs_4_dstW_512_sse2:                    517.9 ( 6.24x)
    hscale_8_to_15__fs_4_dstW_512_ssse3:                   521.6 ( 6.19x)
    hscale_8_to_15__fs_4_dstW_512_avx2:                   1775.0 ( 1.82x)

    Sapphire Rapids:
    hscale_8_to_15__fs_4_dstW_512_c:                      1840.0 ( 1.00x)
    hscale_8_to_15__fs_4_dstW_512_sse2:                    287.9 ( 6.39x)
    hscale_8_to_15__fs_4_dstW_512_ssse3:                   293.8 ( 6.26x)
    hscale_8_to_15__fs_4_dstW_512_avx2:                    219.2 ( 8.40x)
2025-09-06 20:57:48 +00:00
..
aes.asm avutil/x86/aes: remove a few branches 2025-04-10 12:02:34 -03:00
aes_init.c avutil/x86/aes: remove a few branches 2025-04-10 12:02:34 -03:00
asm.h asm: FF_-prefix internal macros used in inline assembly 2016-06-27 17:21:18 +02:00
bswap.h lavu/x86: remove GCC 4.4- stuff 2024-06-13 21:16:16 +03:00
cpu.c swscale: Disable avx2 hscale 8to15 on IceLake and below due to Intel Gather Data Sampling mitigation performance loss 2025-09-06 20:57:48 +00:00
cpu.h avutil/cpu: add AVX512 Icelake flag 2022-03-10 16:45:48 -03:00
cpuid.asm libavutil: include assembly with full path from source root 2022-02-08 10:42:26 +01:00
emms.asm libavutil: include assembly with full path from source root 2022-02-08 10:42:26 +01:00
fixed_dsp.asm libavutil: include assembly with full path from source root 2022-02-08 10:42:26 +01:00
fixed_dsp_init.c configure: Remove av_restrict 2024-03-15 12:51:15 +01:00
float_dsp.asm x86/float_dsp: add SSE2 and AVX versions of scalarproduct_double 2024-06-03 22:14:55 -03:00
float_dsp_init.c x86/float_dsp: add SSE2 and AVX versions of scalarproduct_double 2024-06-03 22:14:55 -03:00
imgutils.asm Merge commit '6be7944ee2' 2017-03-23 18:05:27 -03:00
imgutils_init.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
intmath.h avutil/intmath: use AV_HAS_BUILTIN to detect builtin availability 2025-06-12 14:17:37 +03:00
intreadwrite.h x86/intreadwrite: add SSE2 optimized AV_COPY128U 2024-07-29 23:17:52 -03:00
lls.asm x86: replace explicit REP_RETs with RETs 2023-02-01 04:23:55 +01:00
lls_init.c Include attributes.h directly 2021-04-19 14:34:10 +02:00
Makefile lavu/aes: add x86 AESNI optimizations 2025-04-05 20:46:40 -03:00
pixelutils.asm avutil/x86/pixelutils: Empty MMX state in ff_pixelutils_sad_8x8_mmxext 2023-11-04 01:26:03 +01:00
pixelutils.h avutil: add pixelutils API 2014-08-05 21:05:52 +02:00
pixelutils_init.c avutil/x86/pixelutils: Remove obsolete MMX(EXT) functions 2022-06-22 13:36:44 +02:00
timer.h Merge commit 'd1a6cb195f' 2015-07-09 12:28:09 +02:00
tx_float.asm x86/tx_float: remove HAVE_AVX2_EXTERNAL checks 2024-10-06 01:32:49 +02:00
tx_float_init.c x86/tx_float: remove HAVE_AVX2_EXTERNAL checks 2024-10-06 01:32:49 +02:00
w64xmmtest.h all: Add missing header guards 2016-01-28 19:49:48 -08:00
x86inc.asm x86: Update x86inc.asm 2024-03-24 14:53:57 +01:00
x86util.asm avutil/x86util: Fix broken pre-SSE4.1 PMINSD emulation 2024-03-17 13:52:27 +01:00