[tremor] [PATCH] another additional 15% performance gain
marc dukette
dukette at adelphia.net
Wed Oct 9 13:11:55 PDT 2002
ok, very impressive. Tremor with LOW_ACCURACY defined now performs better
than your orinal port with the FIXP_SPEED flag, when compiled with eVC. I
will now attempt to get the inlice XPROD functions to actually be inline and
see how that helps.
nice job!!!
----- Original Message -----
From: "Nicolas Pitre" <nico at cam.org>
To: <tremor at xiph.org>
Cc: "Monty" <xiphmont at xiph.org>
Sent: Wednesday, October 09, 2002 2:29 PM
Subject: [tremor] [PATCH] another additional 15% performance gain
<p>>
> This is the completion of my 32 bit only multiply operation patch. It is
> faster for sure but also less accurate than 64 bit multiplications. Might
> be handy for slow CPUs or without native 64 bit multiplications, or for
> those out there with poor compilers (any EVC user wants to try out?).
>
> The patch adds a --enable-low-accuracy configure option so this is
> configurable before compiling. For those not using the configure script
you
> need to globally define _LOW_ACCURACY_ to enable this feature. Otherwise
> the resulting code remains just like before by default.
>
> Although the audio degradation is mostly inaudible it is still there
> nevertheless. So this is not recommended if absolute high quality audio
is
> needed. On the other hand some people will still find the audio quality
> more than acceptable for their use. This is a price to pay for faster
code.
>
> With _LOW_ACCURACY_ enabled there was also a nice opportunity for text
size
> reduction:
>
> Default configuration:
>
> text data bss dec hex filename
> 49607 45256 4160 99023 182cf ivorbisfile_example
>
> With ./configure --enable-low-accuracy:
>
> text data bss dec hex filename
> 47655 14632 4160 66447 1038f ivorbisfile_example
>
> The patch is available from:
>
>
ftp://ftp.arm.linux.org.uk/pub/linux/arm/people/nico/vorbis/low_accuracy.dif
f.gz
>
> Although the patch itself is largish, the actual code addition is quite
> small. The bulk of the patch consists of the addition of a X() on table
> values to preshift them when _LOW_ACCURACY_ is defined.
>
> I'd like to see this patch merged in the CVS at some point. Monty?
>
>
> Nicolas
>
> --- >8 ----
> List archives: http://www.xiph.org/archives/
> Ogg project homepage: http://www.xiph.org/ogg/
> To unsubscribe from this list, send a message to 'tremor-request at xiph.org'
> containing only the word 'unsubscribe' in the body. No subject is needed.
> Unsubscribe messages sent to the list will be ignored/filtered.
--- >8 ----
List archives: http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'tremor-request at xiph.org'
containing only the word 'unsubscribe' in the body. No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.
More information about the Tremor
mailing list