Abstract
The emergence of the new video coding standard, Versatile Video Coding (VVC), has resulted in a 40-50% coding gain over its predecessor HEVC for the same visual quality. However, this is accompanied by a sharp increase in computational complexity. The emergence of the VVC standard and the increase in video resolution have exceeded the capacity of single-core architectures. This fact has led researchers to use multicore architectures for the implementation of video standards and to use the parallelism of these architectures for real-time applications. With the strong growth in both areas, video coding and multicore architecture, there is a great need for a design methodology that facilitates the exploration of heterogeneous multicore architectures, which automatically generates optimized code for these architectures in order to reduce time to market. In this context, this paper aims to use the methodology based on data flow modeling associated with the PREESM software. This paper shows how the software has been used to model a complete standard VVC video decoder using Parameterized and Interfaced Synchronous Dataflow (PiSDF) model. The proposed model takes advantage of the parallelism strategies of the OpenVVC decoder and in particular the tile-based parallelism. Experimental results show that the speed of the VVC decoder in PiSDF is slightly higher than the OpenVVC decoder handwritten in C/C++ languages, by up to 11% speedup on a 24-core processor. Thus, the proposed decoder outperforms the state-of-the-art dataflow decoders based on the RVC-CAL model.









Similar content being viewed by others
Data Availability
The data will be made publicly available upon acceptance of the article.
References
Cisco, U. (2020). Cisco annual internet report (2018–2023) white paper. Cisco: San Jose, CA, USA.
Sullivan, G. J., Ohm, J.-R., Han, W.-J., & Wiegand, T. (2012). Overview of the high efficiency video coding (HEVC) standard. IEEE Transactions on Circuits and Systems for Video Technology, 22(12), 1649–1668.
Hamidouche, W., Biatek, T., Abdoli, M., Francois, E., Pescador, F., Radosavljevic, M., Menard, D., & Raulet, M. (2022). Versatile video coding standard: A review from coding tools to consumers deployment. IEEE Consumer Electronics Magazine.
Li, T., Xu, M., Tang, R., Chen, Y., & Xing, Q. (2021). DeepQTMT: A deep learning approach for fast QTMT-based CU partition of intra-mode VVC. IEEE Transactions on Image Processing, 30, 5377–5390.
Wieckowski, A., Hege, G., Bartnik, C., Lehmann, C., Stoffers, C., Bross, B., & Marpe, D. (2020). Towards a live software decoder implementation for the upcoming versatile video coding (VVC) codec. In 2020 IEEE International Conference on Image Processing (ICIP) (pp. 3124–3128). IEEE.
Amestoy, T., Cabarat, P.-l., Gautier, G., Hamidouche, W., & Menard, D. (2022). OpenVVC: A lightweight software decoder for the versatile video coding standard. Preprint retrieved from http://arxiv.org/abs/2205.12217
Pelcat, M., Desnos, K., Heulot, J., Guy, C., Nezan, J.-F., & Aridhi, S. (2014). PREESM: A dataflow-based rapid prototyping framework for simplifying multicore DSP programming. In 2014 6th European Embedded Design in Education and Research Conference (EDERC) (pp. 36–40). IEEE.
Desnos, K. & Heulot, J. (2014). PISDF: Parameterized & interfaced synchronous dataflow for MPSoCs runtime reconfiguration. In 1st Workshop on Methods and Tools for Dataflow Programming (METODO).
Aguilar, M. A., Leupers, R., Ascheid, G., & Murillo, L. G. (2016). Automatic parallelization and accelerator offloading for embedded applications on heterogeneous MPSoCs. In Proceedings of the 53rd Annual Design Automation Conference (pp. 1–6).
Grandpierre, T., Lavarenne, C., & Sorel, Y. (1999). Optimized rapid prototyping for real-time embedded heterogeneous multiprocessors. In Proceedings of the Seventh International Workshop on Hardware/Software Codesign, CODES ’99 (pp. 74–78). New York, NY, USA. Association for Computing Machinery.
Yviquel, H., Lorence, A., Jerbi, K., Cocherel, G., Sanchez, A., & Raulet, M. (2013). ORCC: Multimedia development made easy. In Proceedings of the 21st ACM International Conference on Multimedia (pp. 863–866).
Yu-Kwong, K. (1997). High-performance algorithms for compiletime scheduling of parallel processors. The Hong Kong University of Science and Technology in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy in Computer Science Hong Kong.
Ghamarian, A. H., Geilen, M. C., Stuijk, S., Basten, T., Theelen, B. D., Mousavi, M. R., Moonen, A. J., & Bekooij, M. J. (2006). Throughput analysis of synchronous data flow graphs. In Sixth International Conference on Application of Concurrency to System Design (ACSD’06) (pp. 25–36). IEEE.
Sriram, S., & Bhattacharyya, S. S. (2018). Embedded multiprocessors: Scheduling and synchronization. CRC Press.
Desnos, K., Pelcat, M., Nezan, J.-F., & Aridhi, S. (2013). Pre-and post-scheduling memory allocation strategies on MPSoCs. In Proceedings of the 2013 Electronic System Level Synthesis Conference (ESLsyn) (pp. 1–6). IEEE.
Sze, V., & Budagavi, M. (2012). High throughput CABAC entropy coding in HEVC. IEEE Transactions on Circuits and Systems for Video Technology, 22(12), 1778–1791.
Bossen, F., Sühring, K., Wieckowski, A., & Liu, S. (2021). VVC complexity and software implementation analysis. IEEE Transactions on Circuits and Systems for Video Technology, 31(10), 3765–3778.
Yan, L., Duan, Y., Sun, J., & Guo, Z. (2012). Implementation of HEVC decoder on x86 processors with simd optimization. In 2012 Visual Communications and Image Processing (pp. 1–6). IEEE.
Misra, K., Segall, A., Horowitz, M., Xu, S., Fuldseth, A., & Zhou, M. (2013). An overview of tiles in HEVC. IEEE Journal of Selected Topics in Signal Processing, 7(6), 969–977.
FFMPEG: Open source and cross-platform multimedia library. Retrieved January 2022, from http://www.ffmpeg.org
Dagum, L., & Menon, R. (1998). OPENMP: An industry standard API for shared-memory programming. IEEE Computational Science and Engineering, 5(1), 46–55.
Stone, J. E., Gohara, D., & Shi, G. (2010). OpenCL: A parallel programming standard for heterogeneous computing systems. Computing in Science & Engineering, 12(3), 66.
Eker, J., & Janneck, J. (2003). CAL language report: Specification of the CAL actor language. December.
Bhattacharyya, S. S., Eker, J., Janneck, J. W., Lucarz, C., Mattavelli, M., & Raulet, M. (2011). Overview of the MPEG reconfigurable video coding framework. Journal of Signal Processing Systems, 63(2), 251–263.
Abid, M., Jerbi, K., Raulet, M., Déforges, O., & Abid, M. (2013). System level synthesis of dataflow programs: HEVC decoder case study. In Proceedings of the 2013 Electronic System Level Synthesis Conference (ESLsyn) (pp. 1–6). IEEE.
Wipliez, M., Roquier, G., & Nezan, J.-F. (2011). Software code generation for the RVC-CAL language. Journal of Signal Processing Systems, 63(2), 203–213.
Bezati, E., Mattavelli, M., & Raulet, M. (2010). RVC-CAL dataflow implementations of MPEG AVC/H. 264 CABAC decoding. In 2010 Conference on Design and Architectures for Signal and Image Processing (DASIP) (pp. 207–213). IEEE.
Jerbi, K., Yviquel, H., Sanchez, A., Renzi, D., De Saint Jorre, D., Alberti, C., Mattavelli, M., & Raulet, M. (2017). On the development and optimization of HEVC video decoders using high-level dataflow modeling. Journal of Signal Processing Systems, 87(1), 127–138.
Chavarrías, M., Pescador, F., Garrido, M. J., Juarez, E., & Raulet, M. (2013). A DSP-based HEVC decoder implementation using an actor language dataflow model. IEEE Transactions on Consumer Electronics, 59(4), 839–847.
IETR/VAADER (2016). Open source HEVC decoder (OpenHEVC). Retrieved December 2021, from https://github.com/OpenHEVC
Bhattacharyya, S. S., Brebner, G., Janneck, J. W., Eker, J., Von Platen, C., Mattavelli, M., & Raulet, M. (2009). OpenDF: a dataflow toolset for reconfigurable hardware and multicore systems. ACM SIGARCH Computer Architecture News, 36(5), 29–35.
Haggui, N., Belghith, F., Hamidouche, W., Masmoudi, N., & Nezan, J.-F. (2021). Multiple transform selection concept modeling and implementation using interface based SDF graphs. In Workshop on Design and Architectures for Signal and Image Processing (14th edition) (pp. 60–67).
Haggui, N., Belghith, F., Hamidouche, W., Masmoudi, N., & Nezan, J.-F. (2022). Multiple transform selection concept modeling and implementation using dynamic and parameterized dataflow graphs. Journal of Signal Processing Systems, 1–12.
Amiri, P., Pérard-Gayot, A., Membarth, R., Slusallek, P., Leißa, R., & Hack, S. (2021). Flower: A comprehensive dataflow compiler for high-level synthesis. In 2021 International Conference on Field-Programmable Technology (ICFPT) (pp. 1–9). IEEE.
Josipović, L., Sheikhha, S., Guerrieri, A., Ienne, P., & Cortadella, J. (2021). Buffer placement and sizing for high-performance dataflow circuits. ACM Transactions on Reconfigurable Technology and Systems (TRETS), 15(1), 1–32.
Boyce, J., Suehring, K., Li, X., & Seregin, V. (2018). JVET common test conditions and software reference configurations. In Document JVET-J1010.
Amestoy, T. (2021). Optimisation du codec VVC basé sur la réduction de complexité et le traitement parallèle.
Bjontegaard, G. (2001). Calculation of average PSNR differences between RD-curves. VCEG-M33.
Chi, C. C., Alvarez-Mesa, M., Juurlink, B., Clare, G., Henry, F., Pateux, S., & Schierl, T. (2012). Parallel scalability and efficiency of HEVC parallelization approaches. EEE Transactions on Circuits and Systems for Video Technology, 22(12), 1827–1838.
Abu Taha, M., Hamidouche, W., Sidaty, N., Viitanen, M., Vanne, J., El Assad, S., & Déforges, O. (2020). Privacy protection in real time HEVC standard using chaotic system. Cryptography, 4(2), 18.
Abid, M., Jerbi, K., Raulet, M., Déforges, O., & Abid, M. (2018). Efficient system-level hardware synthesis of dataflow programs using shared memory based FIFO. Journal of Signal Processing Systems, 90(1), 127–144.
Georgakarakos, G., Kanur, S., Lilius, J., & Desnos, K. (2017). Task-based execution of synchronous dataflow graphs for scalable multicore computing. In 2017 IEEE International Workshop on Signal Processing Systems (SiPS) (pp. 1–6). IEEE.
Acknowledgements
This work is supported by the France Campus, and within a co-supervised thesis between the Institue of Electronics and Telecommunications (IETR) of Rennes, France, and the Laboratory of Electronics and Information Technology (LETI) of Sfax, Tunisia.
Funding
This work was supported by the MEAE, MESRI (France), MESRS (Tunisia), MESRS (Algeria), MEN, CNRST (Morocco), through the Hubert Curien Partnerships (PHC) Maghreb 2021, No 45988WG (Eco-VVC project).
Author information
Authors and Affiliations
Contributions
N. Haggui designed, coordinated this research, drafted the manuscript and conducted the experiments and data analysis. W.Hamidouche participated in the conceptualization, methodology, writing, revision, editing, assisted in data analysis and participated in the coordination of the research, F.Belghith, N.Masmoudi and J.F.Nezan assisted in the data analysis, participated in the coordination of the research, supervision, writing, revision and editing. The authors read and approved the final manuscript.
Corresponding author
Ethics declarations
Ethics Approval and Consent to Participate
Not applicable.
Conflicts of Interest
The authors declare that they have no conflict of interest.
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Springer Nature or its licensor holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Haggui, N., Hamidouche, W., Belghith, F. et al. OpenVVC Decoder Parameterized and Interfaced Synchronous Dataflow (PiSDF) Model: Tile Based Parallelism. J Sign Process Syst 95, 895–907 (2023). https://doi.org/10.1007/s11265-022-01819-7
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11265-022-01819-7