[x265] [PATCH] asm: avx code for chroma sa8d, reused luma code
sumalatha at multicorewareinc.com
sumalatha at multicorewareinc.com
Fri Apr 10 11:22:09 CEST 2015
# HG changeset patch
# User Sumalatha Polureddy
# Date 1428653532 -19800
# Fri Apr 10 13:42:12 2015 +0530
# Node ID 29d56d204a24d3618d17d62dc4010afb4eed7a98
# Parent 984e254f93f7cedc5a9b00851d2e14b49dc94e91
asm: avx code for chroma sa8d, reused luma code
diff -r 984e254f93f7 -r 29d56d204a24 source/common/x86/asm-primitives.cpp
--- a/source/common/x86/asm-primitives.cpp Thu Apr 09 11:48:08 2015 -0500
+++ b/source/common/x86/asm-primitives.cpp Fri Apr 10 13:42:12 2015 +0530
@@ -1488,6 +1488,10 @@
p.chroma[X265_CSP_I420].pu[CHROMA_420_32x8].satd = x265_pixel_satd_32x8_avx;
p.chroma[X265_CSP_I420].pu[CHROMA_420_8x32].satd = x265_pixel_satd_8x32_avx;
ASSIGN_SA8D(avx);
+ p.chroma[X265_CSP_I420].cu[BLOCK_420_32x32].sa8d = x265_pixel_sa8d_32x32_avx;
+ p.chroma[X265_CSP_I420].cu[BLOCK_420_16x16].sa8d = x265_pixel_sa8d_16x16_avx;
+ p.chroma[X265_CSP_I420].cu[BLOCK_420_8x8].sa8d = x265_pixel_sa8d_8x8_avx;
+ p.chroma[X265_CSP_I420].cu[BLOCK_420_4x4].sa8d = x265_pixel_satd_4x4_avx;
ASSIGN_SSE_PP(avx);
p.chroma[X265_CSP_I420].cu[BLOCK_420_8x8].sse_pp = x265_pixel_ssd_8x8_avx;
ASSIGN_SSE_SS(avx);
diff -r 984e254f93f7 -r 29d56d204a24 source/test/pixelharness.cpp
--- a/source/test/pixelharness.cpp Thu Apr 09 11:48:08 2015 -0500
+++ b/source/test/pixelharness.cpp Fri Apr 10 13:42:12 2015 +0530
@@ -1437,6 +1437,14 @@
return false;
}
}
+ if (opt.chroma[i].cu[part].sa8d)
+ {
+ if (!check_pixelcmp(ref.chroma[i].cu[part].sa8d, opt.chroma[i].cu[part].sa8d))
+ {
+ printf("chroma_sa8d[%s][%s] failed\n", x265_source_csp_names[i], chromaPartStr[i][part]);
+ return false;
+ }
+ }
}
}
@@ -1895,6 +1903,11 @@
HEADER("[%s] add_ps[%s]", x265_source_csp_names[i], chromaPartStr[i][part]);
REPORT_SPEEDUP(opt.chroma[i].cu[part].add_ps, ref.chroma[i].cu[part].add_ps, pbuf1, FENC_STRIDE, pbuf2, sbuf1, STRIDE, STRIDE);
}
+ if (opt.chroma[i].cu[part].sa8d)
+ {
+ HEADER("[%s] sa8d[%s]", x265_source_csp_names[i], chromaPartStr[i][part]);
+ REPORT_SPEEDUP(opt.chroma[i].cu[part].sa8d, ref.chroma[i].cu[part].sa8d, pbuf1, STRIDE, pbuf2, STRIDE);
+ }
}
}
More information about the x265-devel
mailing list