[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] PS3 - gcell_fft
From: |
Eric Blossom |
Subject: |
Re: [Discuss-gnuradio] PS3 - gcell_fft |
Date: |
Wed, 27 Jan 2010 09:32:37 -0800 |
User-agent: |
Mutt/1.5.20 (2009-08-17) |
On Wed, Jan 27, 2010 at 11:36:14AM +0100, Thilo Mönicke wrote:
> Hi,
>
> I tried to set up a little Testprogram for the PS3 which should show
> the advantage of the Power PC structure. For that, the program should
> calculate 10000 FFTs and take the time. Unfortunately this program is
> much slower as a same program running at a GPP. With the tool spu-top
> I verified that all SPUs are working...
>
> Do you have any idea how I could speed up my program?
Currently, the break even point is higher than 1024 points due to
the overhead to get to the SPEs and back.
Try 16384 points :-)
Eric
> Here is my Python-code (only the intresting part...):
>
> class BenchmarkFFT(gr.top_block):
> def __init__(self):
>
> ph =
> gcell.program_handle_from_filename("/home/moenicke/gnuradio-3.2.2/gcell/lib/spu/gcell_all")
> opts = gcell.jm_options(ph,0)
> self.mgr = gcell.job_manager(opts)
> gcell.set_singleton(self.mgr)
>
> gr.top_block.__init__(self)
>
> fft_len=1024
> n_ffts=10000
>
> src = gr.noise_source_c(gr.GR_GAUSSIAN, 1.0)
> head = gr.head(gr.sizeof_gr_complex, fft_len * n_ffts)
> s2v = gr.stream_to_vector(gr.sizeof_gr_complex, fft_len)
> fft= gcell.fft_vcc(fft_len, True, [])
> sink = gr.null_sink(gr.sizeof_gr_complex * fft_len)
>
> self.connect (src, head, s2v, fft, sink)
>
> reguards
>
> Thilo
>
> @Eric: thank you for your last answer, it was a big help for me ...