[x264-devel] Performance loss of x.264 codec on POWER

Philipp Sibler philipp.sibler at googlemail.com
Fri Jan 29 09:11:48 CET 2016


Hi Priya,

I originally wrote this to the x264-devel list, but it didn't seem to 
work repeatedly. So now I decided to forward it directly to your email 
address:

Regarding the prevalence of Power8 vs. Intel x86/x64 architectures I can 
only emphasize what has already been said here.

However, as we have gone through the x264 build process for several 
Power MCUs in the past:

Did you make sure that x264 was actually build with Altivec support 
enabled? For some platforms we had to adapt the configure script 
accordingly.

Of course a missing Altivec support can't entirely explain the 
difference between x86 and Power performances, for reasons as already 
mentioned by Janne. But also on newer Power core architectures the 
legacy x264 Altivec code can quite make some difference.

Having said that: We also did some x264 performance benchmarks on a 
current Freescale/NXP T4240 Power CPU (24 e6500 cores available) with 
Altivec support enabled. Up to a parallelization of 8 to 10 threads you 
get some performance benefits with each additional thread on this 
platform. Beyond that parallelization grade you see quite significant 
performance saturation effects - presumably due to Altivec resource and 
CoreNet bandwidth limitations.

Cheers

Philipp

Am 20.01.2016 um 08:16 schrieb Priya Duggirala:
>
> Performance of x.264 codec with FFmpeg on ppc64le is 30%-50% slower 
> than on x86(Intel). This is in contrast to what is expected on 
> Power8/LE. The x264 codec needs to be further optimized for Power8/LE 
> as there is signification performance degradation on POWER. Attached 
> are the test results for FFmpeg+x264 codec./(See attached file: 
> status_enabled_ppc.txt)//(See attached file: status_enabled_x86.txt)/
>
> FFmpeg was compiled as:
> ./configure --enable-gpl --enable-memory-poisoning --enable-avresample 
> --enable-libx264 --extra-cflags=-I/usr/local/include 
> --extra-ldflags=-L/usr/local/lib
>
> x264 codec is compiled as:
> ./configure --enable-shared --enable-static --enable-debug
>
> Run time options used:
> perf stat -o perf.log ffmpeg -i 
> VanillaCakeRecipeDemonstration-Joyofbaking.com.mp4 -vcodec libx264 
> -acodec aac -strict experimental -threads 0 -level 31 -r 30000/1001 -b 
> 1900k -pix_fmt yuv420p -tune ssim -profile high -vf 
> setdar=16:9,setsar=1:1 -x264opts 
> stats=x264_00_2pass.log:bframes=4:b-adapt=0:b-bias=20:b-pyramid=normal:ref=1:partitions=all:direct=auto:me=umh:merange=12:subme=9:trellis=0:no-fast-pskip=1:no-dct-decimate=1:fps=29.97 
> -f mp4 -y /dev/null
>
> Machine Configuration : /(See attached file: Machine Configuration.txt)/
>
> Regards,
> Duggirala Priya.
>
>
> _______________________________________________
> x264-devel mailing list
> x264-devel at videolan.org
> https://mailman.videolan.org/listinfo/x264-devel

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x264-devel/attachments/20160129/5c0fd4d9/attachment-0001.html>


More information about the x264-devel mailing list