Energy Consumption and Carbon Footprint of Modern Video
Decoding Software
Energy Consumption and Carbon Footprint of Modern Video Decoding Software
In this project, we provide a comparative study between six fast software decoder, namely h264, hevc, VVdeC, OpenVVC, vp9 and libdav1d, in terms of energy consumption and CO2 emissions. This study provides a better understanding of the trade-off between energy consumption, bitrate, and quality of different decoders and determines which is the most suitable for developing a green and sustainable video streaming solution.
Evaluation System
The evaluation of video decoders goes through four steps

1. Original dataset

We selected the JVET-CTC dataset.

2. Video decoding

We decoded the encoded JVET-CTC dataset by using six decoders,
namely h264, hevc, VVdeC, OpenVVC, vp9 and libdav1d

3. Evaluation metrics

We measured decoding time, energy consumption, CO2 emissions, CPU and memory usage percentage, quality using PSNR, SSIM and VMAF metrics.

4. Results and analysis

We provide an in-depth analyzis of the pros and cons of five open-source software video decoders.

Used Hardware
Characteristics of the Used Hardware : The decoding process was performed on two types of hardware platforms. The first, referred to as the desktop PC, is equipped with an Intel(R) Xeon(R) W-2125 with a 4 Core CPU running at 4.00 GHz with four DDR4 RAM modules, each one with a size of 16 GB on Ubuntu 20.04.5 LTS operating system (OS). The processor itself supports a wide range of \ac{simd}, including SSE4.2, AVX, AVX2, and AVX-512. The second platform, called laptop, incorporates an Intel(R) Core(TM) i5-4258U with a 2-core CPU running at 2.40 GHz. This laptop setup includes two DDR3 RAM modules, each with a size of 4 GB, and operates on the Ubuntu 22.04.2 LTS operating system (OS). Similar to the desktop PC, this processor also embraces a comprehensive range of \ac{simd} capabilities, encompassing SSE4.2, SSE4.1, and AVX2. All six decoding processes rely extensively on assembly and intrinsic methods to leverage the advantages of low-level CPU and \ac{simd} instructions, including SSE, AVX, and AVX-512. These instructions play a pivotal role in expediting the decoding process. We utilized the default configuration of h264, hevc, vp9, and libdav1d decoders from the FFmpeg library version 5.2. Additionally, the appropriate SSE/AVX optimizations were dynamically enabled at runtime, aligning with the specific instruction sets supported by the respective CPUs. For VVdeC and OpenVVC, the decoders were also compiled with the default settings provided by the project's GitHub repository using CMake.
downlod dataset
The whole encoded dataset can be shared upon request. Please, send an email to taieb.chachou[at]gmail.com with Cc sfezza[at]ensttic.dz and whamidouche[at]gmail.com.
CITATION
Please use the following citation when referencing this work:

@inproceedings{chachou2023energydec,
title={Energy consumption and carbon footprint of modern video decoding software},
author={Chachou, Taieb and Hamidouche, Wassim and Fezza, Sid Ahmed and Belalem, Ghalem},
booktitle={2023 IEEE 25th International Workshop on Multimedia Signal Processing (MMSP)},
pages={1--6},
year={2023},
organization={IEEE}
}
Results & analysis

Show results by :

Show results by :

Show results by :