OpenMP: An Industry-Standard API for Shared-Memory Programming
IEEE Computational Science & Engineering
Fast motion estimation within the H.264 codec
ICME '03 Proceedings of the 2003 International Conference on Multimedia and Expo - Volume 3 (ICME '03) - Volume 03
ARM MPCore; The streamlined and scalable ARM11 processor core
ASP-DAC '07 Proceedings of the 2007 Asia and South Pacific Design Automation Conference
A Highly Efficient Parallel Algorithm for H.264 Encoder Based on Macro-Block Region Partition
HPCC '07 Proceedings of the 3rd international conference on High Performance Computing and Communications
OpenMP-based parallelization on an MPCore multiprocessor platform - A performance and power analysis
Journal of Systems Architecture: the EUROMICRO Journal
Parallel H.264 Decoding on an Embedded Multicore Processor
HiPEAC '09 Proceedings of the 4th International Conference on High Performance Embedded Architectures and Compilers
p264: open platform for designing parallel H.264/AVC video encoders on multi-core systems
Proceedings of the 20th international workshop on Network and operating systems support for digital audio and video
Efficient coordination of parallel threads of H.264/AVC decoder for performance improvement
IEEE Transactions on Consumer Electronics
H.264/AVC baseline profile decoder complexity analysis
IEEE Transactions on Circuits and Systems for Video Technology
Hi-index | 0.00 |
Recent advances in semiconductor technologies make it possible to integrate many processor cores in a small device package. The parallel execution capability of such multi-core processors can be exploited to enhance the performance of many traditional sequential applications. There have been numerous research activities to develop parallelization techniques using the OpenMp programming model, in order to speed up sequential applications such as the H.264/AVC codec, but mostly in the PC environment. Therefore, it is difficult to understand which parallelization technique fits well with the H.264/AVC encoder on an embedded multi-core architecture. In this paper, we present parallelization techniques applicable to the H.264/AVC encoder on ARM MPCore using the OpenMP programming model. Further, we propose an analytical model for the performance estimation of the H.264/AVC encoder, and we then verify the model accuracy by performing simulations using hardware/software co-verification tool. Our experimental results show that the parallelization techniques proposed in this paper for the embedded multi-core platform improve the encoder performance by up to 2.36 times, and that the parallelization technique exploiting data-level parallelism outperforms the one using task-level parallelism by 41%. It is also observed that balancing loads among processor cores is a critical parameter in achieving better scalability in the encoder.