[speex-dev] [PATCH] SSE Assmebly for Win32
Aron Rosenberg
aron at sightspeed.com
Wed Oct 22 12:26:43 PDT 2003
Jean Marc, et al.
Attached is a patch adding the Win32 Assembly needed for the SSE
optimizations. It is against speex-1.0.2. We have implemented the patch as
two new files, filters_sse_win32.h and ltp_sse_win32.h. In addition, there
are modifications in filters.c and ltp.c adding a new ifdef called
_USE_SSE_WIN32. The patch is fully functional and sees marked improvement
in CPU usage with Pentium III or IV based systems.
However, don't just apply the patch, there are a couple of architecture
changes that we think should be made with respect to using SSE.
1. Since there is no run time check for SSE support can you add a new CTL
call which will enable/disable the use of the sse functions at run time
instead of compile time.
2. If you do (1), you should either combine all the filter calls or rename
the functions like filter_mem2_msvc_win32 and filter_mem2_gcc_x86
We are in favor of both 1 and 2 since it is easier to read and understand
than giant functions with ifdefs around them.
Aron Rosenberg
SightSpeed
-------------- next part --------------
A non-text attachment was scrubbed...
Name: win32_asm.diff.gz
Type: application/octet-stream
Size: 2595 bytes
Desc: win32_asm.diff.gz
Url : http://lists.xiph.org/pipermail/speex-dev/attachments/20031022/e4c0ccb2/win32_asm.diff-0001.obj
More information about the Speex-dev
mailing list