- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have used Intel MKL to calculate the one-dimensional complex FFT from a set of data with no problems.
The program has a main function and a FFT function and both work. Now i have linked the FFT function as a dll to call it from C# and it hangs due to trying to read from a null pointer just at DftiCreateDescriptor(...).
MKL_Complex16* Dades = new MKL_Complex16
MKL_LONG N2 = n;
DFTI_DESCRIPTOR_HANDLE my_desc1_handle;
long status;
for (int m=0;m
{
Dades
Dades
}
DftiCreateDescriptor( &my_desc1_handle, DFTI_DOUBLE,DFTI_COMPLEX, 1, N2);
status = DftiCommitDescriptor( my_desc1_handle );
status = DftiComputeForward(my_desc1_handle, Dades);
status = DftiFreeDescriptor(&my_desc1_handle);
for (int m=0;m
{
DadesReals
DadesCompl
}
delete[] Dades;
I'm totally amazed at seeing the same code working when linked as executable and not working when linked as dll. I have tried both threaded and sequential layers.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
What is a link line to create your FFT DLL?
Thanks,
-Vladimir
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi, ionomolo
I meet a same issue with you. Do you solve this issue? Would you give me some suggestions?
Thanks!
Chu
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Chu,
I'd recommend you to look at this KB artcile: https://software.intel.com/en-us/articles/using-intel-mkl-in-your-c-program
and check with MKL Linker Adviser how to properly link with Intel MKL - https://software.intel.com/en-us/articles/intel-mkl-link-line-advisor
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page