summaryrefslogtreecommitdiff
path: root/vp8/common/invtrans.h
diff options
context:
space:
mode:
authorYunqing Wang <yunqingwang@google.com>2011-06-28 09:14:13 -0400
committerYunqing Wang <yunqingwang@google.com>2011-07-22 09:28:06 -0400
commit20bd1446c0c3ee82c6be9102ed911477639908c5 (patch)
tree93b6abf071dc9766c5d3e0d38fc232b7103a5f4e /vp8/common/invtrans.h
parentb5ea2fbc2c1554769848774c836aad262af95072 (diff)
downloadlibvpx-20bd1446c0c3ee82c6be9102ed911477639908c5.tar
libvpx-20bd1446c0c3ee82c6be9102ed911477639908c5.tar.gz
libvpx-20bd1446c0c3ee82c6be9102ed911477639908c5.tar.bz2
libvpx-20bd1446c0c3ee82c6be9102ed911477639908c5.zip
Preload reference area to an intermediate buffer in sub-pixel motion search
In sub-pixel motion search, the search range is small(+/- 3 pixels). Preload whole search area from reference buffer into a 32-byte aligned buffer. Then in search, load reference data from this buffer instead. This keeps data in cache, and reduces the crossing cache- line penalty. For tulip clip, tests on Intel Core2 Quad machine(linux) showed encoder speed improvement: 3.4% at --rt --cpu-used =-4 2.8% at --rt --cpu-used =-3 2.3% at --rt --cpu-used =-2 2.2% at --rt --cpu-used =-1 Test on Atom notebook showed only 1.1% speed improvement(speed=-4). Test on Xeon machine also showed less improvement, since unaligned data access latency is greatly reduced in newer cores. Next, I will apply similar idea to other 2 sub-pixel search functions for encoding speed > 4. Make this change exclusively for x86 platforms. Change-Id: Ia7bb9f56169eac0f01009fe2b2f2ab5b61d2eb2f
Diffstat (limited to 'vp8/common/invtrans.h')
0 files changed, 0 insertions, 0 deletions