First modification of multi-thread decoder
This is the first modification of VP8 multi-thread decoder, which uses same threads to decode macroblocks and then do loopfiltering for each frame. Inspired by Rob Clark, synchronization was done on every 8 macroblocks instead of every macroblock to reduce lock contention. Comparing with the original code, this implementation gave about 15%- 20% performance gain while decoding my test clips on a Core2 Quad platform (Linux). The work is not done yet. Test on other platforms are needed. Change-Id: Ice9ddb0b511af1359b9f71e65066143c04fef3b5
This commit is contained in:
@@ -18,6 +18,7 @@
|
||||
|
||||
extern void vp8_mtdecode_mb_rows(VP8D_COMP *pbi,
|
||||
MACROBLOCKD *xd);
|
||||
extern void vp8_mt_loop_filter_frame(VP8D_COMP *pbi);
|
||||
extern void vp8_stop_lfthread(VP8D_COMP *pbi);
|
||||
extern void vp8_start_lfthread(VP8D_COMP *pbi);
|
||||
extern void vp8_decoder_remove_threads(VP8D_COMP *pbi);
|
||||
|
Reference in New Issue
Block a user