[Libav-user] FFmpeg decoder performance degradation from 2.2.3 to 2.7.2
Paul B Mahol
onemda at gmail.com
Mon Nov 2 22:34:16 CET 2015
On 11/2/15, Nikita Skiba <zaulan at gmail.com> wrote:
> Hello,
>
> I have recently updated FFmpeg libraries, used by our software from 2.2.3
> to 2.7.2. Then, after some simple performance tests on Windows I've
> surprisingly found, that performance of decoding MJPEG, H264 in 2.7.2
> approx. 10-20% worse than in 2.2.3. In contrast, H265/HEVC decoding
> performance in 2.7.2 is better than in 2.2.3.
>
> Why does this performance degradation happen? Could it be because of
> different build configuration? Could it be a normal phenomenon for
> ffmpeg software evolution?
>
> Build configurations:
> ffmpeg version 2.2.3 Copyright (c) 2000-2014 the FFmpeg developers
> built on Jun 3 2014 13:32:59 with gcc 4.8.2 (GCC)
GCC
> configuration: --enable-shared --disable-static --enable-memalign-hack
> --disable-dxva2 --extra-cflags=-U__STRICT_ANSI__
> --prefix=/s/src/ffmpeg/build-2.2.3
> --shlibdir=/s/src/ffmpeg/build-2.2.3/bin/x86_64 --build-suffix=-itv-2.2.3
> --bindir=/s/src/ffmpeg/build-2.2.3/bin/x86_64
> --libdir=/s/src/ffmpeg/build-2.2.3/lib/x86_64 --enable-runtime-cpudetect
> --enable-w32threads --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32-
> --arch=x86_64
> libavutil 52. 66.100 / 52. 66.100
> libavcodec 55. 52.102 / 55. 52.102
> libavformat 55. 33.100 / 55. 33.100
> libavdevice 55. 10.100 / 55. 10.100
> libavfilter 4. 2.100 / 4. 2.100
> libswscale 2. 5.102 / 2. 5.102
> libswresample 0. 18.100 / 0. 18.100
>
> versus:
> ffmpeg version 2.7.2 Copyright (c) 2000-2015 the FFmpeg developers
> built with Microsoft (R) C/C++ Optimizing Compiler Version 18.00.21005.1
> for x64
Microsoft
> configuration: --toolchain=msvc --enable-shared --disable-static
> --enable-memalign-hack --disable-dxva2 --extra-cflags=-U__STRICT_ANSI__
> --prefix=/home/nikita.skiba/build-2.7.2
> --shlibdir=/home/nikita.skiba/build-2.7.2/bin/x86_64
> --build-suffix=-itv-2.7.2
> --bindir=/home/nikita.skiba/build-2.7.2/bin/x86_64
> --libdir=/home/nikita.skiba/build-2.7.2/lib/x86_64
> --enable-runtime-cpudetect --enable-w32threads --arch=x86_64
> libavutil 54. 27.100 / 54. 27.100
> libavcodec 56. 41.100 / 56. 41.100
> libavformat 56. 36.100 / 56. 36.100
> libavdevice 56. 4.100 / 56. 4.100
> libavfilter 5. 16.101 / 5. 16.101
> libswscale 3. 1.101 / 3. 1.101
> libswresample 1. 2.100 / 1. 2.100
>
> The same for x86_32 arch.
>
> p.s. I've already created a post on Zeranoe's forum but nobody answered(
>
> You can find detailed benchmark listings for some codecs there:
> https://ffmpeg.zeranoe.com/forum/viewtopic.php?f=15&t=2752
>
> Thank in advance,
> Nikita Skiba
>
More information about the Libav-user
mailing list