- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
ippiFFTFree_C_32fc is now deprecated but we can still use ippiFFTInitAlloc_C_32fc to allocate memory. If we use ippiFFTInitAlloc_C_32fc what do we call to free the memory?
Thanks,
Andy
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Andy,
InitAlloc is also deprecated:
IPP_DEPRECATED("is deprecated. This function is obsolete and will be removed in one of the future IPP releases. Use the following link for details: http://software.intel.com/en-us/articles/intel-ipp-71-deprecated-features/")\
IPPAPI (IppStatus, ippiFFTInitAlloc_C_32fc,
( IppiFFTSpec_C_32fc** pFFTSpec,
int orderX, int orderY, int flag, IppHintAlgorithm hint ))
the recommendation is to use GetSize+Init pair and allocate required memory buffers at your side.
regards, Igor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Igor,
According the the link you sent and the documentation ippiFFTInitAlloc_C_32fc isn't deprecated only the integer version is ippiFFTInitAlloc_R_32s. This is confusing me!
Regarding your workaround, I can see ippiFFTGetBufSize can be used for calculating the buffer size but how do I initialize the IppiFFTSpec_R_32f structure?
Thanks,
Andy
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Andy,
It can call ippsFFTInit_R_32f function to init the structure. Check some more example here:
http://software.intel.com/en-us/articles/how-to-use-intel-ipp-s-1d-fourier-transform-functions
Thanks,
Chao
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I'm sorry, this isn't making sense to me. We need to use the ippiFFTFwd not the ippsFFTFwd because we are doing an FFT on image data. The ippiFFTFwd functions take an IppiFFTSpec_C_32fc so we can't use ippsFFTInit_R_32f because this takes an IppsFFTSpec_C_32fc.
The code we currently have is this:
IppiFFTSpec_C_32fc *spec = NULL;
ippiFFTInitAlloc_C_32fc(&spec, orderX, orderY, IPP_FFT_DIV_FWD_BY_N, ippAlgHintAccurate);
ippiFFTFwd_CToC_32fc_C1IR(complexBuffer, width * sizeof(Ipp32fc), spec, 0);
ippiFFTFree_C_32fc(spec);
We have fixed the ippiFFTFwd_CToC_32fc_C1IR call to not use the inplace version. But it also says when we compile that ippiFFTFree_C_32fc is deprecated but ippiFFTInitAlloc_C_32fc isn't.
Can you please tell me exactly what calls to replace the above 4 lines with that aren't deprecated?
Thanks,
Andy
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Andy,
you haven't mentioned which IPP version you use. I've taken a look at 8.0 headers - both InitAlloc and Free for all FFT flavors are marked as deprecated. The recommendation is the same as well for ippSP as for ippIP - to use GetBufferSize, malloc (ippMalloc) at your side and then to use Init for FFTSpec initialization.
Regards, Igor
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page