Connecting IPP to OpenCV

Hi,

I’m having trouble using my IPP dll’s with OF on my macbook pro. I’ve included the following code (taken from intel’s website) inside my program, but it doesn’t see any ipp*.dll as it’s supposed to do.

  
  
const char* opencv_libraries = 0;  
const char* addon_modules = 0;  
cvGetModuleInfo(0, &opencv_libraries, &addon_modules);  
printf("OpenCV: %s\nAdd-on Modules: %s\n",   
      opencv_libraries,   
      addon_modules);  
  

I’ve tried both including all dll’s from IPP/bin in the release folder of my build and not. When i don’t include them OpenCV is supposd to find them through my system PATH (which is also set to point to the IPP/bin directory). I’ve tried both IPP 2.0 & IPP 4.1.

Do any of you have an idea what i could do to figure this out? Could it be a problem since the IPP versions are a bit old an my processor is a dual core? Do i need to specify anything in the code/linking?

thanks
/cj

servus cj,

got the same problem with the newest IPP version.
i included the checking code snippet from the intel page into the new OF_V0.05 openCV-example but it did not show the opencv-addon-modules. and i inspected the executable -> it did not load the IPP dlls. an custom application using good old grayscaleImage & co doesn’t show the opencv-addon-modules either, but it loads the IPP dlls.
very strange. any idea? someone?

cheers
/didi

p.s.: working on wxpsp2, intel D, IPP v5.32073 trial

i found out that calling

  
IppStatus status = ippStaticInit();  

makes the application load some ipp-dlls. you have to include ipp.h and link against some ipp-stub-libs.
but it does not accelerate the application at all!?!
i think the app can not be render-bound performance-wise since the the framerate really decreases with more imageprocessing (aka blobs).
i also don’t think IPP was silently enabled before because i could not see ipp-dlls loaded in the process explorer.
i mean actually IPP should be silently enabled as soon as it is installed and the path is set (according to intel docu), but why does the openCV addon check not do anything …

I don’t know if this is helpful, but I have noticed on AMD chips that I have had to statically link against IPP instead of using dlls to get the optimization to work… otherwise, intel treats the AMD chips as foreign and doesn’t boost optimization. there is some info in IPP about static linking.

also, as a paralellel proecess, you might want to jump on the opencv forum and ask there, or on the intel forum (the ipp forum is pretty helpful)

take care!!
zach

thx for your reply, zach.
i work on intel D, with winxpsp2, newest IPP (trial) and VS2005.
you are probably right, directing this answer to the opencv or ipp community really might be the better solution.

so does it work for you with the current OF + opencv addon?
how do you check if it works?
if it works, what does the code snippet print out?
if it works, with which IPP version?

so does it work for you with the current OF + opencv addon?
how do you check if it works?
if it works, what does the code snippet print out?
if it works, with which IPP version?

actually, no idea - have stopped using IPP for the moment in order to be really open source :slight_smile: have had no problems with Of + IPP in the past, but with AMD had to do static linking and other funniness b/c of intel being intel.

good luck
and please keep us posted!!
zach

Can anyone tell me what the performance improvement is like with oF+openCV+MacBook Pro? Considering dropping the cash, but I want to make sure it’s worth it.