[MPlayer-dev-eng] [PATCH] Optimized libmpeg2 routines for ARM/Xscale

Guillaume POIRIER poirierg at gmail.com
Tue May 8 00:32:10 CEST 2007


Hi,

On 5/8/07, Siarhei Siamashka <siarhei.siamashka at gmail.com> wrote:
> On Monday 07 May 2007 22:53, Siarhei Siamashka wrote:

[...]

> > These MPEG2_ACCEL_ARM and MPEG2_ACCEL_ARM_IWMMXT are not
> > defined anywhere.
>
> Hmm, you were too fast to commit this broken code, while I was still testing
> it and typing a reply :) Could you please CC me next time when planning ARM
> related changes and wait for at least a few days before commiting them?

I certainly can.


> Anyway, here is some fix to solve compilation problems attached.

Applied. I don't know if it's the best fix, but it's certainly better
than having a broken SVN.


> But would you
> prefer libmpeg2-style runtime cpu capabilities detection by setting signal
> handler and catching exception?

The libmpeg2's way to do runtime CPU capabilities detection is quite
ugly and unreliable IMHO, as well as in the opinion of Reimar at
least, but unfortunately, if no standard way to perform this detection
(contrary to x86's cpuid), then I don't have strong feeling about
this.

Since Intel did some ARM, maybe they added cpuid support to their XScale CPUs?


> I also have run a test for some short mpeg1 video clip with '-vo md5sum', it
> did not detect any problems, result is the same as with old code.
>
> Benchmark on Nokia N800:
>
> Older revision 23253:
> BENCHMARKs: VC: 124.349s VO:   0.126s A:   0.000s Sys:   4.716s =  129.191s
>
> Latest revision with ARM (actually ARMv5 because of PLD) optimized motion
> compensation code:
> BENCHMARKs: VC: 114.727s VO:   0.123s A:   0.000s Sys:   5.102s =  119.951s
>
>
> So not everything is bad. And it is not surprising, I have been using the
> same libmpeg2 ARM optimized motion compensation code written by
> AGAWA Koji for more than half a year in MPlayer build for Nokia 770.

cool! I imagine iwmmxt optimizations are supposed to improve
performance even more than that?

Guillaume
-- 
Rich, you're forgetting one thing here: *everybody* except you is
stupid.
    Måns Rullgård


More information about the MPlayer-dev-eng mailing list