discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] How to use VOLK instructions with shorts


From: Josh Blum
Subject: Re: [Discuss-gnuradio] How to use VOLK instructions with shorts
Date: Tue, 31 Jul 2012 17:48:50 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20120714 Thunderbird/14.0


On 07/31/2012 06:00 AM, Carles Fernandez wrote:
> Dear all,
> 
> we are looking into the implementation of correlators in which the two
> sequences to correlate are vectors of std::complex<short>. For
> gr_complex<float>, we use:
> 
>  volk_32fc_x2_dot_prod_32fc_a
> 
> but for shorts we would need something like
> volk_16ic_x2_dot_prod_16ic_a, which does not exist. What is the best
> way to go? It makes sense to implement such a function, or there is
> not much gain expected with this specific data format?
> 

typically the model is to add the kernel to volk, its just another
header in volk/include/volk/volk_32fc_x2_dot_prod_32fc_a.h

Write the generic (C only) implementation, and use this in your block,
test it, make sure it works. Then write another implementation using
SIMD intrinsics.

> Any advice will be greatly appreciated!
> 

gnuradio often focuses on floats and x86. It would be wonderful to see
some more fixed point contributions. go for it!

As far as performance, it depends on your CPU. For arm, fixed point
computation could be beneficial. For x86, floating point is already
pretty optimized, so less of a performance gain I assume.

-josh


PS dont listen to me, let the benchmarking decide what performs best :-)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]