Re: [LAD] GCC Vector extensions

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Maurizio De Cecco <jmax@...>
Cc: <linux-audio-dev@...>
Date: Monday, July 25, 2011 - 3:17 pm

On Mon, Jul 25, 2011 at 5:04 AM, Maurizio De Cecco wrote:

[snip]

I'm getting SIMD instructions when I compile. However, you have two
things slowing you down:

- The calculations for the for(;;) loop is slowing you down with
every iteration.
- You're only using one xmm register, so you're getting some memory slowdowns.

Both of these can be solved by having gcc unroll your loops for you
(recompile with -funroll-loops).

In addition, you're handling 3 buffers at a time. bufc[k] = bufa[k] *
bufb[k]. You might be able to speed it up a little by converting the
code to:

memcopy(bufc, bufa, N*sizeof(float));
for(k=0; kLinux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[LAD] GCC Vector extensions, Maurizio De Cecco, (Wed Jul 20, 8:27 am)
Re: [LAD] GCC Vector extensions, Robin Gareus, (Wed Jul 20, 3:47 pm)
Re: [LAD] GCC Vector extensions, Gabriel Beddingfield, (Wed Jul 20, 4:19 pm)
Re: [LAD] GCC Vector extensions, Maurizio De Cecco, (Mon Jul 25, 10:04 am)
Re: [LAD] GCC Vector extensions, Gabriel Beddingfield, (Mon Jul 25, 3:17 pm)
Re: [LAD] GCC Vector extensions, Robin Gareus, (Mon Jul 25, 12:46 pm)
Re: [LAD] GCC Vector extensions, Maurizio De Cecco, (Tue Jul 26, 8:15 am)
Re: [LAD] GCC Vector extensions, Gabriel Beddingfield, (Tue Jul 26, 12:30 pm)
Re: [LAD] GCC Vector extensions, Dan Kegel, (Wed Jul 20, 3:03 pm)