Enabling Intel® IPP on OpenCV* (Windows* and Ubuntu*)

By Jonghak Kim, Published: 10/27/2015, Last Updated: 11/27/2017


 This article explains how to enable Intel® IPP with your OpenCV in order to get performance benefits and to utilize hardware resources efficiently. 

 Intel® IPP : Web Link


To set up the environment (Windows* systems):

  • Configuration of OpenCV  – Enabling IPP  
    • Download OpenCV 3.0.0 or above ( https://opencv.org/releases.html ) and CMake (http://www.cmake.org/download/ )
    • Extract OpenCV where you want and install CMake and run CMake.
    • Add OpenCV’s location as the source location and choose a location where you want your build will be created.
    • Choose your generator. For example, 'Visual Studio 15 2017 Win64'
    • To enable IPP you have 2 options. One, you can use ‘ICV’ that is a special IPP build for OpenCV provided from IPP 3.0 or above, which is free and the other option is that you can use your IPP from any Intel® software tool suites ( Intel® System Studio or Intel® Parallel Studio ).
    • To go with ICV just have WITH_IPP on. The ICV package will download automatically and cmake configuration will catch it.
    • In order to enable IPP from Intel® Software Suites , you need to manually add an entry for IPP as well on top of setting WITH_IPP. Click ‘Add Entry’ and type in its name as ‘IPPROOT’. Choose its type as PATH and insert where your IPP is located.
    • If configuration gets done without a problem. Then it is ready to go. 
    • Now click 'Generate' button to prepare to build your OpenCV with your generator. 


To set up the environment (Linux* Ubuntu* systems):

  • Configuration of OpenCV  – Enabling IPP
    • Download OpenCV 3.0.0 or above ( https://opencv.org/releases.html )
    • Extract OpenCV where you want
    • Open a terminal and go to where you extracted OpenCV
    • As the same as Windows case, you can go with either ICV or IPP
    • For ICV, type  'cmake -D WITH_IPP=ON .'
    • Example configuration result for ICV
    • For IPP, type  'cmake -D WITH_IPP=ON -D IPPROOT=<Your IPP Location> .'
    • Example configuration result for IPP
    • If the configuration went without a problem, then proceed and type 'make -j4'
    • When building is done, type 'make install' to filnally install the library


Product and Performance Information


Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804