On Wed, Feb 15, 2012 at 6:45 AM, Martin DvH <gnuradiom...@olifantasia.com>wrote:

>
> I think it would make sense to change the volk interface by adding
> kernel calls which can handle the two alignment cases (aligned,
> unaligned).
> We would have to add a is_unaligned parameter to the volk kernel calls.
>
> The gnuradio blocks would then change in the following way:
>
> So in stead of:
>
> if(is_unaligned()) {
>  for(size_t i = 1; i < input_items.size(); i++){
>    volk_32fc_x2_multiply_32fc_u(out, out, (gr_complex*)input_items[i],
> noi);
>  }
> } else {
>  for(size_t i = 1; i < input_items.size(); i++){
>    volk_32fc_x2_multiply_32fc_a(out, out, (gr_complex*)input_items[i],
> noi);
>  }
> }
>
> You would have:
>
> for(size_t i = 1; i < input_items.size(); i++)
>  volk_32fc_x2_multiply_32fc(is_unaligned(), out, out,
> (gr_complex*)input_items[i], noi);
>
> You halve the amount of code in gnuradio blocks which to my opinion
> makes it much more maintainable.
>
>
> Martin


Martin,

I think that's a good idea. The only real question is if we can (easily)
implement it with the runtime dynamics of the Volk calls. It basically
moves the decision from GNU Radio into Volk, but since we're looking at
Volk as behind-the-scenes stuff, it's more logical to place the
responsibility there than expose it to GR block developers.

Thanks,
Tom




> On Wed, 2012-02-15 at 12:06 +0100, Martin DvH wrote:
> > On Tue, 2012-02-14 at 22:56 -0500, Tom Rondeau wrote:
> > > There's been a ton of work going on in getting us ready to really
> > > start using Volk in GNU Radio blocks. Instead of repeating myself,
> > > here, you can see more about the who/what/when/why/how of the changes
> > > here:
> > >
> > >
> > >
> http://www.trondeau.com/blog/2012/2/13/gnu-radio-is-crap-and-other-such-insights.html
> >
> > I think you copied the wrong link.
> > You probably meant:
> >
> http://www.trondeau.com/blog/2012/2/13/volk-integration-to-gnu-radio.html
> >
> >
> > Martin
> >
> > >
> > >
> > > The basic summary is that I'm seeing amazing performance results and
> > > I'm very excited to get this into our project.
> > >
> > >
> > > I'm really hoping that people can check out the branch and test it out
> > > against their applications. A number of changes were made inside GNU
> > > Radio and a handful of blocks have been converted to using Volk, and
> > > I'd like to see how the performance compares. My own tests show great
> > > results, but I have a pretty heterogeneous setup (Linux/Ubuntu and
> > > Intel processors).
> > >
> > >
> > > I should have another post on my website later this week discussing my
> > > benchmark results for the Volk blocks, but anyone interested in
> > > testing it out on their own should check out
> > > gnuradio-examples/python/volk_benchmark. The README in that directory
> > > should help you understand what to do and how to do it.
> > >
> > >
> > > We would like to get this merged into GNU Radio master (and therefore
> > > version 3.5.2) as soon as possible, so I would really appreciate
> > > feedback and bug reports as soon as possible.
> > >
> > >
> > > Thanks!
> > > Tom
> > >
> > >
> > > _______________________________________________
> > > Discuss-gnuradio mailing list
> > > Discuss-gnuradio@gnu.org
> > > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> >
> >
> >
> > _______________________________________________
> > Discuss-gnuradio mailing list
> > Discuss-gnuradio@gnu.org
> > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> >
>
>
>
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to