Friday, January 29, 2010

Re: [Discuss-gnuradio] PS3 - gcell_fft

Hi,

I tryed to set the fft lenght to 16384... but the gcell fft only
accepts values to 4096. Its defined in the C-Files, but why?

Do you have any working benchmarks for the ps3?

regards,

Thilo

2010/1/27 Eric Blossom <eb@comsec.com>:
> 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 ...
>


_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio

No comments:

Post a Comment