Intel® Moderncode for Parallel Architectures
Support for developing parallel programming applications on Intel® Architecture.

Application level threading of 2D DFT

packj
Beginner
349 Views
I am using IPP 7.0 to write some code that will perform a series of 2D image filtering operations on images of various sizes (mostly 128 by 128). I have two versions of the code: one that leaves the threading up to IPP (internal to the DFT call, for example), and another in which I handle the threading myself at the application level.I have found that the IPP threading does notprovide any significant speedupfor the small sizedDFT operations (like 128 by 128) and so I really want to use application level threading. When Ido this, however,the final images are not correct. If I run the two threads serially, things work fine, but when I run them in parallel the result is wrong. I suspect that I need to provide more information than what I have provided, but I'm not sure what ype of information would be most useful. The IPP functions I am using are as follows:

ippiDFTFwd_RToPack_32f_C1IR
ippsRealToCplx_32f
ippiCplxExtendToPack_32fc32f_C1R
ippiMulPack_32f_C1IR
ippiDFTInv_PackToR_32f_C1IR

I tried simplifying the code somewhat by just doing the DFT, then zeroing out the DC component and then doing the InvDFT. I still got the same result (twothreads running in parallel give the wrong answer, while two threads running serially give the correct answer). In this simple case, the only IPP functions I use are as follows:

ippiDFTFwd_RToPack_32f_C1IR
ippiDFTInv_PackToR_32f_C1IR

Please let me know what other information I can provide that might help in diagnosing this.

Thanks for your help!

0 Kudos
4 Replies
packj
Beginner
349 Views
Nevermind... it was my error. I think I have it working correctly now.
0 Kudos
Rama_Krishna
Beginner
349 Views
Hi,
How to create native thread in application using IPP.could you please share example which you have done for 2D DFT

Regards,
rama
0 Kudos
timintel
Beginner
349 Views
Quoting Rama Krishna
Hi,
How to create native thread in application using IPP.could you please share example which you have done for 2D DFT

Regards,
rama

I don't think your question is clear. If it is about IPP, there is a forum specifically for that. If it is about Windows or linux threading, the forum for the compiler you intend to use might be appropriate.
0 Kudos
Gennady_F_Intel
Moderator
349 Views
Please try to link IPP with the non-threaded version and check how it will work.
--Gennady
0 Kudos
Reply