[x265] [PATCH] sm: avx2 code for sad_x4[8x8] for 8bpp
chen
chenm003 at 163.com
Wed Mar 11 01:48:42 CET 2015
right, need correct commit message
At 2015-03-10 18:16:47,sumalatha at multicorewareinc.com wrote:
># HG changeset patch
># User Sumalatha Polureddy<sumalatha at multicorewareinc.com>
># Date 1425982596 -19800
># Node ID a5273cb9926a6a1e54cd15f1a8b6767157bd29f0
># Parent f50217c5971c36f942dc542f411ae9e33f47e402
>sm: avx2 code for sad_x4[8x8] for 8bpp
>
>SSE3
>sad_x4[ 8x8] 73.26x 403.36 29550.04
>
>AVX2
>sad_x4[ 8x8] 76.99x 385.05 29645.66
>
>diff -r f50217c5971c -r a5273cb9926a source/common/x86/asm-primitives.cpp
>--- a/source/common/x86/asm-primitives.cpp Tue Mar 10 12:50:58 2015 +0530
>+++ b/source/common/x86/asm-primitives.cpp Tue Mar 10 15:46:36 2015 +0530
>@@ -1446,6 +1446,7 @@
> p.pu[LUMA_8x8].sad_x3 = x265_pixel_sad_x3_8x8_avx2;
> p.pu[LUMA_8x16].sad_x3 = x265_pixel_sad_x3_8x16_avx2;
>
>+ p.pu[LUMA_8x8].sad_x4 = x265_pixel_sad_x4_8x8_avx2;
> p.pu[LUMA_16x8].sad_x4 = x265_pixel_sad_x4_16x8_avx2;
> p.pu[LUMA_16x12].sad_x4 = x265_pixel_sad_x4_16x12_avx2;
> p.pu[LUMA_16x16].sad_x4 = x265_pixel_sad_x4_16x16_avx2;
>diff -r f50217c5971c -r a5273cb9926a source/common/x86/sad-a.asm
>--- a/source/common/x86/sad-a.asm Tue Mar 10 12:50:58 2015 +0530
>+++ b/source/common/x86/sad-a.asm Tue Mar 10 15:46:36 2015 +0530
>@@ -3851,4 +3851,51 @@
> movd [r5 + 8], xm1
> RET
>
>+INIT_YMM avx2
>+cglobal pixel_sad_x4_8x8, 7,7,5
>+ xorps m0, m0
>+ xorps m1, m1
>+
>+ sub r2, r1 ; rebase on pointer r1
>+ sub r3, r1
>+ sub r4, r1
>+%assign x 0
>+%rep 4
>+ ; row 0
>+ vpbroadcastq xm2, [r0 + 0 * FENC_STRIDE]
>+ movq xm3, [r1]
>+ movhps xm3, [r1 + r2]
>+ movq xm4, [r1 + r3]
>+ movhps xm4, [r1 + r4]
>+ psadbw xm3, xm2
>+ psadbw xm4, xm2
>+ paddd xm0, xm3
>+ paddd xm1, xm4
>+ add r1, r5
>+
>+ ; row 1
>+ vpbroadcastq xm2, [r0 + 1 * FENC_STRIDE]
>+ movq xm3, [r1]
>+ movhps xm3, [r1 + r2]
>+ movq xm4, [r1 + r3]
>+ movhps xm4, [r1 + r4]
>+ psadbw xm3, xm2
>+ psadbw xm4, xm2
>+ paddd xm0, xm3
>+ paddd xm1, xm4
>+
>+%assign x x+1
>+ %if x < 4
>+ add r1, r5
>+ add r0, 2 * FENC_STRIDE
>+ %endif
>+%endrep
>+
>+ pshufd xm0, xm0, q0020
>+ pshufd xm1, xm1, q0020
>+ movq [r6 + 0], xm0
>+ movq [r6 + 8], xm1
>+ RET
>+
>+
> %endif
>_______________________________________________
>x265-devel mailing list
>x265-devel at videolan.org
>https://mailman.videolan.org/listinfo/x265-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20150311/b2421ede/attachment.html>
More information about the x265-devel
mailing list