> How do I know that my flow-graph is executing in thread per block mode?
>
> As far as I can tell my only 1 core out of the 8 is being used when I run my
> flow-graphs. This is what I see when I run the performance monitor (or
> whatever it is called) in Ubuntu.
>
> I am currently using gnuradio 3.3.0 as my version.
>
> So can I parallelize my block without having to create a meta-block as you
> say? I have a lot of for-loops and vector calculations that need to be
> optimized (adaptive fir filters).
By default, each flow-graph is assigned its own thread. It's up to the
kernel to schedule these as it sees fit.
Getting parallelism *inside your own custom block* is something you'll
have to deal with yourself.
I've done experiments with using the multi-threaded FFTW libraries for
very large transforms, which causes
internal parallelism with the FFTW library. This works, and doesn't
appear to adversely affect Gnu Radio
thread-per-block scheduling.
The thread-per-block scheduler is the default behaviour, so the reason
you may only be seeing one core in use is just
due to the dynamic behaviour of your flowgraph.
--
Marcus Leech
Principal Investigator
Shirleys Bay Radio Astronomy Consortium
http://www.sbrac.org
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
No comments:
Post a Comment