[FFmpeg-devel] [RFC/PATCH] More flexible variafloat_to_int16 , WMA optimization, Vorbis

Michael Niedermayer michaelni
Tue Jul 15 20:28:37 CEST 2008


On Tue, Jul 15, 2008 at 08:58:23AM -0600, Loren Merritt wrote:
> On Tue, 15 Jul 2008, Michael Niedermayer wrote:
[...]
>> It also might be worth to look at mplayer/liba52/resample_mmx.c, maybe 
>> some
>> of that code could be reused. Especially as we do not have a MMX
>> float_to_int16, besides the trick used could be tried with SSE2.
>
> I'm not very interested in optimizing for pentium2 / k6-1. I'm not sure I 
> could, anyway; that's so far removed from anything I can benchmark on.

Well, maybe you are interrested an a Merom-2M
Your SSE2                           : 16009
My ancient MMX trick ported to SSE2 : 14764

Code used for the experiment (yes its non functional as such):
@@ -2223,9 +2225,12 @@
 )
 
 FLOAT_TO_INT16_INTERLEAVE(sse2,
+    "pxor %%xmm7, %%xmm7\n"
     "1:                         \n"
-    "cvtps2dq  (%2,%0), %%xmm0  \n"
-    "cvtps2dq  (%3,%0), %%xmm1  \n"
+    "movdqa  (%2,%0), %%xmm0  \n"
+    "movdqa  (%3,%0), %%xmm1  \n"
+    "psubd %%xmm7, %%xmm0\n"
+    "psubd %%xmm7, %%xmm1\n"
     "packssdw   %%xmm1, %%xmm0  \n"
     "movhlps    %%xmm0, %%xmm1  \n"
     "punpcklwd  %%xmm1, %%xmm0  \n"

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

No snowflake in an avalanche ever feels responsible. -- Voltaire
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20080715/3dfb07cb/attachment.pgp>



More information about the ffmpeg-devel mailing list