]> granicus.if.org Git - libvpx/commit
Re-design rate-distortion cost tracking buffers
authorJingning Han <jingning@google.com>
Thu, 10 Oct 2013 17:37:40 +0000 (10:37 -0700)
committerJingning Han <jingning@google.com>
Thu, 10 Oct 2013 18:03:44 +0000 (11:03 -0700)
commitfc19243cedad003d181266fd41958bf27e6f21ae
tree599277366db865e4bc1b75ba0d184df12b08d4ee
parent2b055dfe3f244bacaf4c40aede81f83f03a94349
Re-design rate-distortion cost tracking buffers

This commit re-designs the per transformed block rate-distortion
costs tracking buffers. It removes redundant buffer usage, makes
the needed context memory allocation per VP9_COMP instance and
reuses the same buffer sets inside the rate-distortion optimization
search loop, thereby avoiding repeatedly requiring memory space.

It reduces speed 0 runtime:

bus at 2000 kbps from 166763ms to 158967ms,
football at 600 kbps from 246614ms to 234257ms.

Both about 5% speed-up. Local tests suggest about 2% to 5% speed-up
for speed 1 and 2 settings. This does not change compression
performance.

Change-Id: I363514c5276b5cf9a38c7251088ffc6ab7f9a4c3
vp9/encoder/vp9_block.h
vp9/encoder/vp9_onyx_int.h
vp9/encoder/vp9_rdopt.c