Restructure multi-threaded decoder
authorYunqing Wang <yunqingwang@google.com>
Thu, 16 Sep 2010 18:08:52 +0000 (14:08 -0400)
committerYunqing Wang <yunqingwang@google.com>
Fri, 17 Sep 2010 13:56:05 +0000 (09:56 -0400)
commitf857a85088eaf515f599a1040098528863d2f657
tree8a376f56edf01c6c4a1226977c90d2b8cc5793e0
parent9100073e8d99f2cf1b0b2d2288687d193295addf
Restructure multi-threaded decoder

On each MB, loopfiltering is done right after MB decoding. This
combines two loops in multi-threaded code into one, which reduces
number of synchronizations to half.

The above-row/left-col data are saved in temp buffers for
next-row/next MB decoding.

Tests on 4-core gLucid machine showed 10% decoder performance
gain with threads=4 (tulip clip). Testing on other platforms
isn't done yet.

Change-Id: Id18ea7c1e84965dabea65d4c01ca5bc056ddeac9
vp8/common/reconintra_mt.c [new file with mode: 0644]
vp8/common/reconintra_mt.h [new file with mode: 0644]
vp8/decoder/decoderthreading.h
vp8/decoder/decodframe.c
vp8/decoder/onyxd_if.c
vp8/decoder/onyxd_int.h
vp8/decoder/threading.c
vp8/vp8_common.mk