SSE2/SSSE3 optimizations and unit test for sub_pixel_avg_variance().
authorRonald S. Bultje <rbultje@google.com>
Thu, 20 Jun 2013 22:59:48 +0000 (15:59 -0700)
committerRonald S. Bultje <rbultje@google.com>
Thu, 20 Jun 2013 22:59:48 +0000 (15:59 -0700)
commit1e6a32f1af8066fd0b718b11f00cb09104280f49
treebdcc489ed869497e0852ef4d139b1c9329c440af
parent8fb6c58191251792765c2910af3f9d6da22d6c11
SSE2/SSSE3 optimizations and unit test for sub_pixel_avg_variance().

Encoding of bus @ 1500kbps (first 50 frames) goes from 3min57 to
3min35, i.e. approximately a 10.5% speedup. Note that the SIMD versions
which use a bilinear filter (x_offset & 7 || y_offset & 7) aren't
perfectly interleaved, and can probably be improved further in the
future. I've marked this with a few TODOs/FIXMEs in the code.

Change-Id: I5c9e900c0f0d32e431a50fecae213b510b2549f9
test/variance_test.cc
vp9/common/vp9_rtcd_defs.sh
vp9/encoder/x86/vp9_subpel_variance.asm
vp9/encoder/x86/vp9_variance_sse2.c