Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- Intel Community
- Software
- Software Development SDKs and Libraries
- Intel® oneAPI Math Kernel Library
- using MKL's fft in fixed point dsp codes

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page

yen__raymond

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

11-07-2018
10:43 AM

126 Views

using MKL's fft in fixed point dsp codes

Hi,

We've started exploring MKL's FFT in our dsp programs. We were able to set up FFT and get correct output. One issue we have now is that: the data flows before and after FFT are all in fixed point, int32_t, e.g.. Other than converting vectors btw int32_t and float/double, bf and af FFT, is there any other options, any provision in MKL that we missed, or Intel's IPP would be a better option, b/c they do seem to have some vector/image data type conversion tools. Any advice? Thanks.

Best,

Raymond

Link Copied

4 Replies

Khang_N_Intel

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

11-08-2018
01:23 PM

126 Views

Hi Raymond,

If your applications involve image processing, I highly recommend that you try our latest version of the Intel(R) IPP since Intel(R) IPP contains many highly optimized function in the image processing domain.

In fact, Intel(R) just announced the release of the Intel(R) Parallel Studio XE (PSXE) 2019 Update 1 today. Intel(R) IPP 2019 Update 1 is a part of the Intel(R) PSXE 2019 Update 1.

Best Regards,

Khang

yen__raymond

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

11-08-2018
01:44 PM

126 Views

Hi Khang,

Thanks so much for the reply about image processing tools. Actually our processing jobs are more on 1-D real and/or complex integer vector signal processing, e.g. fft, filter, channel codec, etc. So my questions are: to use MKL's FFT for such cases, do we have to do (int vector) <-> (float vector) conversion before and after FFT? does MKL have such vector data type converting provision? or if IPP's FFT can handle integer vector as input/output directly (at least from spec, they seem avail.), so no conversion in the middle of data flow is needed?

Thanks again.

Best regards,

Raymond

Gennady_F_Intel

Moderator

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

11-08-2018
10:50 PM

126 Views

So my questions are: to use MKL's FFT for such cases, do we have to do (int vector) <-> (float vector) conversion before and after FFT? does MKL have such vector data type converting provision?

>> MKL doesn't support such sort of conversions

or if IPP's FFT can handle integer vector as input/output directly (at least from spec, they seem avail.), so no conversion in the middle of data flow is needed?

>> IPP FFT either doesn't handle such mode, but IPP has many conversions between different datatypes. For example, for your case you may try to use IppStatus ippsConvert_32s64f(const Ipp32s* *pSrc*, Ipp64f* *pDst*, int *len*); and vice versa functions...

>> some more comments about IPP. Actually there 4 major domains: Signal Processing, Image Processing, Compression and Cryptography.

regard to FFT performance -- we expect the same performance between MKL and IPP.

--Gennady

yen__raymond

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

11-09-2018
06:09 AM

126 Views

HI Gennady,

I got it. Thank you so much for your detailed explanation and information. Will start looking in those directions.

Best regards,

Raymond

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

For more complete information about compiler optimizations, see our Optimization Notice.