# Are negative strides in FFT signal data vectors supported?

## Are negative strides in FFT signal data vectors supported?

In the MKL Intel documentation, I don't see any mention that negative strides are support for FFT's - as they are for convolution and correlation.

Are negative strides supported in the MKL FFT library?

I can get negative strides to work (w/ no offset) but I have to futz with L0 and L1 in ways I wouldn't expect. If L1 < 0 then we must have L0 = |stride| - 1. For example if L1 = -3, the L0 must be 2 (in other words I set theDFTI_INPUT_STRIDES parameter with an array [2, -3] for a 1D FFT, and the FFT algorithm indexes through my input data in reverse order w/ stride 3).

xj = X(1 +L0 +L1 *j) = X(3 - 3*j)

What is the explanation for this? I would have expected the offset L0 to be something like the size of the input array.

Thank you,

Paul

CenterSpace Software

3 posts / 0 new
For more complete information about compiler optimizations, see our Optimization Notice.

Quoting - paulshirkey
In the MKL Intel documentation, I don't see any mention that negative strides are support for FFT's - as they are for convolution and correlation.

Are negative strides supported in the MKL FFT library?

I can get negative strides to work (w/ no offset) but I have to futz with L0 and L1 in ways I wouldn't expect. If L1 < 0 then we must have L0 = |stride| - 1. For example if L1 = -3, the L0 must be 2 (in other words I set theDFTI_INPUT_STRIDES parameter with an array [2, -3] for a 1D FFT, and the FFT algorithm indexes through my input data in reverse order w/ stride 3).

xj = X(1 +L0 +L1 *j) = X(3 - 3*j)

What is the explanation for this? I would have expected the offset L0 to be something like the size of the input array.

Thank you,

Paul

CenterSpace Software

Hi Paul,

As i knew, theFFT in current MKL version don't support negative strides. But MKL should havea set of routines routines in VSL for convolution and correlationdirectly . They alsoincluded fourier implementation.You may try them. Please see more from mkl manual mklman.pdf=>chapter 10 Statistical Functions.

Regards,
Ying

Quoting - Ying H (Intel)

Hi Paul,

As i knew, theFFT in current MKL version don't support negative strides. But MKL should havea set of routines routines in VSL for convolution and correlationdirectly . They alsoincluded fourier implementation.You may try them. Please see more from mkl manual mklman.pdf=>chapter 10 Statistical Functions.

Regards,
Ying

Thanks Ying.

I'm using the routines in VSL succesfully.