[FFmpeg-devel] [PATCH 2/2] x86/takdsp: add avx2 versions of all functions

James Almer jamrial at gmail.com
Sat Dec 23 01:30:09 EET 2023


On 12/22/2023 8:08 PM, Michael Niedermayer wrote:
> On Thu, Dec 21, 2023 at 10:15:49PM -0300, James Almer wrote:
>> On an Intel Core i7 12700k:
>>
>> decorrelate_ls_c: 814.3
>> decorrelate_ls_sse2: 165.8
>> decorrelate_ls_avx2: 101.3
>> decorrelate_sf_c: 1602.6
>> decorrelate_sf_sse4: 640.1
>> decorrelate_sf_avx2: 324.6
>> decorrelate_sm_c: 1564.8
>> decorrelate_sm_sse2: 379.3
>> decorrelate_sm_avx2: 203.3
>> decorrelate_sr_c: 785.3
>> decorrelate_sr_sse2: 176.3
>> decorrelate_sr_avx2: 99.8
>>
>> Signed-off-by: James Almer <jamrial at gmail.com>
> 
> on AMD Ryzen 9 3950X 16-Core Processor
> 
> Illegal instruction (core dumped)
> threads=1
> tests/Makefile:308: recipe for target 'fate-lossless-tak' failed
> make: *** [fate-lossless-tak] Error 132
> 
> (gdb) disassemble $rip-32, $rip+32
> Dump of assembler code from 0x55555651a580 to 0x55555651a5c0:
>     0x000055555651a580:	or     $0x17,%al
>     0x000055555651a582:	movdqa %xmm1,(%rdi,%rdx,1)
>     0x000055555651a587:	add    $0x10,%rdx
>     0x000055555651a58b:	jl     0x55555651a562
>     0x000055555651a58d:	retq
>     0x000055555651a58e:	nop
>     0x000055555651a58f:	nop
>     0x000055555651a590:	shl    $0x2,%edx
>     0x000055555651a593:	add    %rdx,%rdi
>     0x000055555651a596:	add    %rdx,%rsi
>     0x000055555651a599:	neg    %rdx
>     0x000055555651a59c:	vmovd  %ecx,%xmm2
> => 0x000055555651a5a0:	vpbroadcastd %r8d,%ymm3

Right, on linux the fifth argument is on a gpr, and vpbroadcastd with 
gpr source is avx512.

Will fix and resend.

>     0x000055555651a5a6:	vbroadcasti128 0x4bc751(%rip),%ymm4        # 0x5555569d6d00
>     0x000055555651a5af:	vmovdqa (%rsi,%rdx,1),%ymm1
>     0x000055555651a5b4:	vpsrad %xmm2,%ymm1,%ymm1
>     0x000055555651a5b8:	vpmulld %ymm3,%ymm1,%ymm1
>     0x000055555651a5bd:	vpaddd %ymm4,%ymm1,%ymm1
> End of assembler dump.
> 
> 
> [...]
> 
> 
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".


More information about the ffmpeg-devel mailing list