<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Low power VVC decoding with OpenVVC - Extended Abstract⋆</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Pierre-Loup Cabarat</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ibrahim Farhat</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Hafssa Boujida</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Daniel Menard</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Wassim Hamidouche</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>In: B. Combemale</institution>
          ,
          <addr-line>G. Mussbacher, S. Betz, A. Friday, I. Hadar, J. Sallou, I. Groher, H. Muccini, O. Le Meur, C. Herglotz, E. Eriksson, B. Penzenstadler, AK. Peters</addr-line>
          ,
          <institution>C. C. Venters. Joint Proceedings of ICT4S 2023 Doctoral Symposium</institution>
          ,
          <addr-line>Demonstrations</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Technology Innovation Institute P.</institution>
          <addr-line>O.Box: 9639, Masdar City Abu Dhabi, UAE</addr-line>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>University of Rennes, INSA Rennes</institution>
          ,
          <addr-line>CNRS, IETR - UMR 6164, Rennes</addr-line>
          ,
          <country country="FR">France</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Recently, global demand for high-resolution videos and the new multimedia applications have created the need for a new video coding standard. Hence, in July 2020 the Versatil Video Coding (VVC) standard was released providing up to 40% bit-rate saving for the same video quality compared to its predecessor High Eficiency Video Coding (HEVC). However, this bit-rate saving comes at the cost of a high computational complexity, particularly for live applications and on resource-constraint embedded devices. This paper present a low power VVC decoder implementation designed for embedded platforms. This latter exploits three level of optimization to reduce the energy consumption for ARM architectures The first level of optimization exploit the data-level parallelism inside diferent computation blocks. The source code of the OpenVVC decoder is heavily optimized with SIMD instructions. For ARM processor, NEON vector processing instruction set is well suited for performance optimizations. The most time consuming blocks including motion compensation, inverse transform, deblocking filter, Sample Adaptive Ofset (SAO) filter Adaptive Loop Filter (ALF) have been optimized with NEON instructions. The second level of optimization exploit high-level paralelism proposed by VVC through frame, tile and slice-based parallelisms. For frame-level parallelism, a main thread is used to parse the PSP, SPS, picture/slice header and schedule decoding threads with a thread pool. Then, the main thread provides the data and updates the internal structure of the available threads in the thread-pool for decoding the frame. Therefore, motion compensation synchronization between threads is performed for sequences with inter-coding configuration after starting the decoding process. The third level of optimization exploit power management techniques. Data level parallelism and task level parallelism reduce the decoding time. This execution time reduction is translated into an energy consumption decrease thanks to Dynamic Voltage and Frequency Scaling (DVFS) which adapts the clock frequency and the voltage supply to the processing load. The challenge is to prediction the complexity of the forthcoming frame to decode. The results showed that the OpenVVC decoder achieve real-time decoding of FHD resolution at 30 fps targeting a platform with 8 cores with a maximum frequency of 2.2 Ghz and HD</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>real-time decoding at 30 fps for platforms using 4 cores with a maximum frequency of 1.8 Ghz.
In terms of average consumed power, OpenVVC showed around 5.6 watts and 1.7 watts for the
8 and 4 cores platforms, respectively.</p>
      <p>Acknowledgments
This work has been achieved in the context of the project 3EMS-2 funded by Région Bretagne,
Rennes Metropole, co-funded by EU FEDER program and supported by Images et Reseaux
cluster.</p>
    </sec>
  </body>
  <back>
    <ref-list />
  </back>
</article>