Use of TBB, IPP and OpenMP on OSX or Linux

Hello All,

Is it worth to use TBB, Intel IPP on OSX 10.6 or Linux?

(Especially with opencv)

I already tested OpenMP on Linux (4 cores)
It is now used at 400% instead of 100%.
But there is no much more performance result than before. :-/
The detection time is the same.

Does someone already tested one of those implementation.

If yes could you provide example?

Many thanks in advance,

You can build OpenCV with IPP for a performance boost (how much I’m not sure) with the instructions here:

http://opencv.willowgarage.com/wiki/InstallGuide

it requires that you build your own OpenCV instead of using the .a included in ofxOpenCV.

Thanks for the answer,

But unfortunately the result is the same.
The detection time is more than 600ms when I try the facedetect.cpp example provided by Opencv 2.1.

The following procedure has been followed (works also for ubuntu 10.10):
http://www.w-bremer.de/en/howtos/72-opencv-ubuntu-ipp

Here is the cmake options and result:

root@desktop:/var/tmp/opencv.build# cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON OPENCV_BUILD_3RDPARTY_LIBS=ON -D USE_SSE=ON -D USE_SSE2=ON -D USE_SSE3=ON -D USE_IPP=ON -D IPP_PATH=/opt/intel/ipp/6.1.2.051/em64t/sharedlib -D WITH_TBB=YES -D WITH_UNICAP=YES …/OpenCV-2.1.0
– Detected version of GNU GCC: 44 (404)
– checking for module ‘libunicap’
– found libunicap, version 0.9.5
– checking for module ‘libucil’
– found libucil, version 0.9.5
– checking for module ‘libdc1394-2’
– package ‘libdc1394-2’ not found
– checking for module ‘libdc1394’
– package ‘libdc1394’ not found
– Use INCLUDE: /usr/lib/python2.6/dist-packages/numpy/core/include
– TBB detected:
CMake Warning (dev) at CMakeLists.txt:513 (link_directories):
This command specifies the relative path

as a link directory.

Policy CMP0015 is not set: link_directories() treats paths relative to the
source dir. Run “cmake --help-policy CMP0015” for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
This warning is for project developers. Use -Wno-dev to suppress it.

– IPP detected: TRUE
– Parsing ‘cvconfig.h.cmake’
running mkdir -p “/var/tmp/opencv.build/unix-install/” 2>&1

– General configuration for opencv 2.1.0 =====================================

– Built as dynamic libs?: ON
– Compiler:
– C++ flags (Release): -Wall -Wno-long-long -pthread -ffunction-sections -O3 -DNDEBUG -fomit-frame-pointer -O3 -ffast-math -msse -msse2 -DNDEBUG
– C++ flags (Debug): -Wall -Wno-long-long -pthread -ffunction-sections -g -O0 -DDEBUG -D_DEBUG
– Linker flags (Release):
– Linker flags (Debug):

– GUI:
– GTK+ 2.x: 1
– GThread: 1

– Image I/O:
– JPEG: TRUE
– PNG: TRUE
– TIFF: TRUE
– JPEG 2000: TRUE

– Video I/O:
– DC1394 1.x: 0
– DC1394 2.x: 0
– FFMPEG: 1
– codec: 1
– format: 1
– util: 1
– swscale: 1
– gentoo-style: 1
– GStreamer: 1
– UniCap: 1
– PvAPI:
– V4L/V4L2: Using libv4l
– Xine: FALSE

– Interfaces:
– Old Python: 0
– Python: ON
– Python interpreter: /usr/bin/python2.6
– Python numpy: 1
– Use IPP: /opt/intel/ipp/6.1.2.051/em64t/sharedlib
– Use TBB: YES
– Build Documentation 0

– Install path: /usr/local

– cvconfig.h is in: /var/tmp/opencv.build



– Configuring done
– Generating done
– Build files have been written to: /var/tmp/opencv.build

On mac and win32 it works well with nearly same hardware.

Did I miss a library or anything else??

Any clue will be appreciated…