230 likes | 352 Views
Video Coding on Multi-core Graphics Processors. Ngai -Man Cheung, Xiaopeng Fan, Oscar C. Au, and Man-Cheung Kung. IEEE SIGNAL PROCESSING MAGAZINE MARCH 2010. Outline. Introduction Motion estimation on GPUs GPU-based ME based on loop unrolling
E N D
Video Coding on Multi-core Graphics Processors Ngai-Man Cheung, Xiaopeng Fan, Oscar C. Au, and Man-Cheung Kung • IEEE SIGNAL PROCESSING MAGAZINE MARCH 2010
Outline • Introduction • Motion estimation on GPUs • GPU-based ME based on loop unrolling • GPU-basedME based on rearranging the encoding order • RD-optimized intra-mode decision on GPUs • Motion compensation on GPUs • GPU-based fast motion estimation • Fast motion estimation • The GPU implementation using tiling • Experiments • My conclusion
Introduction #1 • H.264 • Motion estimation [20][22] • Intra prediction [27] • Motion compensation [10]
Introduction #2 • Challenges • Data dependency • Flow control instructions can degrade the performance • if, switch, do, for, while • Advantages • faster
Motion estimation #1 • GPU-based ME based on loop unrolling [20] • SAD • Metric matching
Motion estimation #3 2~14倍 • Two parts
Motion estimation #4 • GPU-based ME based on rearranging the encoding order • RD-optimized ME 40倍
Intra-mode #1 • RD-optimized intra-mode decision on GPUs [27] • http://www.camdemy.com/media/4371
Motion compensation #1 • Motion compensation on GPUs [10]
Fast motion estimation #1 • Simplified unsymmetrical multi-hexagon search [42] • Good tradeoff between computational complexity and coding efficiency. • minimizing the Lagrangian cost
Fast motion estimation #3 • The GPU implementation using tiling • Neighboring block in another tile is unavailable.
Conclusion • Tradeoff between speedup and performance is importance. • There seems to be no study on partitioning the encoding flow between CPUs and GPUs.