[Top][All Lists]

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

Re: [Discuss-gnuradio] Fast, Single-Sample Phase Rotation

From: Sylvain Munaut
Subject: Re: [Discuss-gnuradio] Fast, Single-Sample Phase Rotation
Date: Thu, 28 May 2015 22:52:48 +0900

Hi John,

> I have a  complex phase rotation function that uses a pre-generated sin/cos
> LUT and some basic multiple/adds.
> As it turns out, the rotation calc, which uses "straight" C/C++ math is
> still the bottleneck in a demod.

I don't quite get what you need ...

Rotating a single sample by a given angle is one sin/cos (for which
you use LUT) and a single complex multiply (and gcc is going to have a
pretty optimized version of that).

Doing stuff for single samples at a time, the bottleneck isn't going
to be the computation, it's going to be the load/store from/to memory.

Also are we talking changing the phase by a fixed amount , or an
amount that change after each sample (like the rotator kernel does) ?

Need more info ... In optimization the devil is in the details :p
Also lack of alignement doesn't mean SIMD is out if you have several
of them to do at once ...



reply via email to

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