I am using IPP FFT functions in my application The application is developed on Win 7 64 bit platform. I am using MS development enviorment ( Visual Studio 2008). I am using IPP library 7.0Update 6. Initally the application was developed for Win32 mode. Later upgradeditfor 64 bit platfrom.Whileanalysing some test results for application found that the 64 bit and32 bit results mismatch. On futher investgation found that the output from the FFt function are different.The IPP function used are
ippsFFTInitAlloc_C_32f : for initalising the twidle factors and FFT specification.
(ippsFFTInitAlloc_C_32f(&twiddles.spec, order, IPP_FFT_DIV_INV_BY_N, ippAlgHintAccurate);)
ippsFFTFwd_CToC_32f : computing the FFT.
I am attaching the Input and output of FFT function result for 32 bit and 64 bit version.
Is there any way to look at the twiddle factor genrated by ippsFFTInitAlloc_C_32f
Is the difference in FFT output for 64 and 32 bit is a known thing or there something wrong.Kindly let me know the potentail things to look-in.
the uploaded files are seen in private files folder part of my account. I am not sure how to make it public. I have uploaded the file at
Kindly use this link to get the results. Will appreciate your help
I have uploaded the FFT input an 32/64 bit dll output. Kindly have a look and let me know if its expected behaviour.
I am using
Win 7 os
IPP version 7.0 Update 6.
I have used IPP init(IppStatus ippInit(void));). The 32 bit and 64 bit both version of application was run ons ame platform(Intel i7 Processor/win 7 OS).
Kindly let me know if the behaviour is correct i.e you tend to have different results for 64 and 32 IPP library running on same platfrom.
I looked the RealOut results you received.
Here two first numbers from RealOut files
32 bit 64 bit
As you can see the difference in the results to be within the accuracy of floating-point ( which isFLT_EPSILON - see float.h )which you use.
Its true that the results is within the accuracy of floating-point.
I was trying to understand the difference in results. Is the FFT calculated in 64 bit and 32 bit differntly? I mean the floating point computation are done in different precision in 32 bit and 64 bit lib.
I was expecting bit exact results.
If this is the expected behavouri.e.the 64 bitlib and 32bit liboutputs are NOT BIT EXACT.