[FFmpeg-devel] libavcodec/utvideodsp : add avx2 version

James Almer jamrial at gmail.com
Tue Nov 21 16:34:03 EET 2017


On 10/22/2017 9:05 AM, Martin Vignali wrote:
> Hello,
> 
> In attach patch to add AVX2 version for the utvideodsp
> 
> Checkasm result (Kaby Lake, os 10.12)
> restore_rgb_planes_c: 8371.0
> restore_rgb_planes_sse2: 6583.7
> restore_rgb_planes_avx2: 3596.5
> 
> restore_rgb_planes10_c: 16735.7
> restore_rgb_planes10_sse2: 11478.5
> restore_rgb_planes10_avx2: 7193.7

Curious, on my Haswell (mingw-w64 Win10) i get

restore_rgb_planes_c: 79500.7
restore_rgb_planes_sse2: 6872.7
restore_rgb_planes_avx2: 6715.7

restore_rgb_planes10_c: 91394.7
restore_rgb_planes10_sse2: 14494.0
restore_rgb_planes10_avx2: 13468.7

> 
> 
> Pass fate test for me
> 
> 
> 0001-checkasm-add-utvideodsp-test :
> I'm not entirely sure of mine, for this checkasm,
> 
> 0002-libavcodec-x86-utvideodsp-make-macro-for-func
> Code reorganization
> 
> 0003-libavcodec-utvideodsp-add-avx2-version-for-the-dsp
> AVX2 version
> 
> 0004-libavcodec-x86-utvideodsp.asm-cosmetic
> Cosmetic
> 
> Martin
> Jokyo Images

Sorry i missed this set. The asm changes look simple and good. Only
thing I'd have done was making sure the constants were wide enough to
avoid having to use vpbroadcast instructions.
I noticed for that matter that said constants already exist in
constants.c, so i just made it use them instead.

The checkasm test is a bit ugly and could use some cosmetics, though.


More information about the ffmpeg-devel mailing list