Bug#738981: Fwd: Bug#738981: Switch to use generic_fpu for ARM

Riku Voipio riku.voipio at iki.fi
Mon Mar 3 08:50:58 UTC 2014


On Sun, Mar 02, 2014 at 12:02:40PM +0100, Thomas Orgis wrote:
> Am Sat, 01 Mar 2014 01:00:02 +0900
> schrieb Taihei Momma <tmkk at mac.com>: 
> 
> > OK, after some investigation with armhf cross environment and qemu, finally the current mpg123 svn (r3517) should work 
> 
> After Tahei didn't stop at this (big thanks from here!), we got a new
> snapshot,
> 
> 	http://mpg123.org/snapshot/mpg123-20140302115523.tar.bz2 ,
> 
> that will hopefully become mpg123 1.19.0 soon (not 1.18.x
> because of feature additions regarding this very debian issue). The
> main points:
> 
> - float output with all decoders (also arm_nofpu)
> - ARM decoders (esp. NEON) working with debian toolchain
> - new --with-cpu=arm_fpu choice with runtime detection to switch
>   between NEON or normal FPU
> 
> So, the number of builds for optimal treatment of differing platforms
> reduces to two:
> 
> 1. --with-cpu=arm_nofpu
> 2. --with-cpu=arm_fpu

Awesome work!

> I hope we can all be happy about that. I'd also be glad to get some
> confirmation from debian that it really works now. Release will be
> imminent, then.

Here's some test results

On a cortex-a15 system arm_nofpu: (ubuntu armhf)

#decoder        t_s16/s t_f32/s
ARM     24.22   25.02

On a cortex-a15 system arm_fpu: (ubuntu armhf)

#decoder        t_s16/s t_f32/s
NEON    14.33   14.90
generic 36.25   27.46
generic_dither  39.52   27.44

the A15 core was downclocked and cpufreq disabled to ensure
stable results

ARMv5 system arm_nofpu (debian armel)

#mpg123 benchmark (user CPU time in seconds for decoding)
#decoder        t_s16/s t_f32/s
ARM     49.12   63.17

ARMv5 system arm_fpu (debian sid)

#mpg123 benchmark (user CPU time in seconds for decoding)
#decoder        t_s16/s t_f32/s
generic 491.75  468.37
generic_dither  535.50  468.38

armel is with softfloat emulation, so horrible times were expected - 
the main point of that last run was to verify that NEON runtime
detection works (Seems so).

Riku



More information about the pkg-multimedia-maintainers mailing list