Thanks Eric. My FFTs are not that big so I guess I will be fine.

On Wed, Sep 29, 2010 at 4:59 PM, Eric Blossom <[email protected]> wrote:

> On Wed, Sep 29, 2010 at 01:47:22PM -0700, John Andrews wrote:
> > Hi,
> > This is more of a programming question than a gnuradio question.
> >
> > I am writing a C++ block that takes in a stream of complex data, an N
> > element block {B} is chosen from the stream, this block is multiplied
> with a
> > set {M1, M2, M3...Mn} where size of each set element is N (same as data
> > block) too. I want to find FFT using FFTW library on each of the products
> > {B.M1, B.M2, .... B.Mn} in the general_work() function. As this can be an
> > intensive task can someone suggest me what could be the optimal strategy
> to
> > do without compromising efficiency and risk losing samples that is
> entering
> > the machine from the USRP. I was thinking about multithreading. Do you
> think
> > this is the way to go?
> >
> > Thanks,
> > John
>
> I'd measure first, and see if you've really got a problem.
> (Premature optimization is the root of all evil.)
>
> Note also that GNU Radio itself is multithreaded, and if you're doing
> substantial work in other blocks, your cores may already being put to
> productive work.
>
> Make sure that the version of FFTW you're using was built with SSE
> support enabled.
>
>  http://fftw.org/fftw3_doc/Installation-on-Unix.html
>
>  ./configure --enable-sse --enable-float
>
> Measure again :-)
>
>
> If you do have a problem, and your cores are not already 100%
> utilized, then you may want to look at using the FFTW's suport for
> multithreading (inside of the package).  Note that it will only make
> sense if you use one of the advanced interfaces that allows you to ask
> it to compute multiple FFT's in one call to the API.  The standard
> interface won't help, unless your FFTs are seriously big -- say, > 1M
> points.
>
> http://fftw.org/fftw3_doc/Multi_002dthreaded-FFTW.html
> http://fftw.org/fftw3_doc/Advanced-Complex-DFTs.html
>
> Eric
>
_______________________________________________
Discuss-gnuradio mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to