Developer Guide and Reference

Contents

Using Intel® Performance Libraries with Microsoft Visual Studio*

You can use the Intel®
C++
Compiler with the following Intel® Performance Libraries that may be included as a part of the product:
  • Intel® Data Analytics Acceleration Library (Intel® DAAL)
  • Intel® Integrated Performance Primitives (Intel® IPP)
  • Intel® Threading Building Blocks (Intel® TBB)
  • Intel® Math Kernel Library (Intel® MKL)
Use the property pages to specify Intel® Performance Libraries to use with the selected project configuration.
The functionality supports both Intel® C++ and Microsoft Visual C++* project types.
To specify Intel® Performance Libraries, select
Project
Properties
. In
Configuration Properties
, select
Intel Performance Libraries
, then do the following:
  1. To use
    Intel® Data Analytics Acceleration Library
    change the
    Use Intel® DAAL
    settings as follows:
    • No:
      Disable Use of Intel® DAAL.
    • Default Linking Method:
      Use Intel® DAAL libraries that depend on the settings for the
      Code Generation
      Runtime Library
      property.
    • Multi-threaded Static Library:
      Use parallel static Intel® DAAL libraries.
    • Single-threaded Static Library:
      Use parallel sequential static Intel® DAAL libraries.
    • Multi-threaded DLL:
      Use parallel dynamic Intel® DAAL libraries.
    • Single-threaded DLL:
      Use parallel sequential static Intel® DAAL libraries.
  2. To use
    Intel® Integrated Performance Primitives
    , change the
    Use Intel IPP
    settings as follows:
    • No:
      Disable use of Intel® IPP libraries.
    • Default Linking Method:
      Use Intel® IPP libraries that depend on the settings for the
      Code Generation
      Runtime Library
      property.
    • Multi-threaded Static Library:
      Use parallel static Intel® IPP libraries.
    • Single-threaded Static Library:
      Use parallel sequential static Intel® IPP libraries.
    • Multi-threaded DLL:
      Use parallel dynamic Intel® IPP libraries.
    • Single-threaded DLL:
      Use parallel sequential static Intel® IPP libraries.
  3. To use
    Intel® Threading Building Blocks
    in your project, change the
    Use Intel TBB
    settings as follows:
    • No:
      Disable use of Intel® TBB libraries.
    • Use TBB:
      Set to
      Yes
      to use Intel® Threading Building Blocks.
    • Instrument for use with Intel® Threading Analysis Tools:
      Set to
      Yes
      to add the preprocessor definition
      TBB_USE_THREADING_TOOLS
      to the project property
      Preprocessor
      Preprocessor Definitions
      .
      The
      TBB_USE_THREADING_TOOLS
      definition will be added only if the project property
      Code Generation
      Runtime Library
      is set to
      Multi-threaded DLL (option
      MD
      )
      .
  4. To use
    Intel® Math Kernel Library
    in your project, change the
    Use Intel MKL
    property settings as follows:
    • No:
      Disable use of Intel® MKL libraries.
    • Parallel:
      Use parallel Intel® MKL libraries.
    • Sequential:
      Use sequential Intel® MKL libraries.
    • Cluster:
      Use cluster Intel® MKL libraries.
    If your target platform is set to
    x64
    , a final selection appears:
    Use ILP64 interfaces
    . If selected, the corresponding ilp MKL libraries is added to the linker command line. Additionally, the MKL_ILP64 preprocessor definition is added to the compiler command line. If you do not make this selection, lp MKL libraries are used.
    Sets of libraries for each option depend on selected target platform and project properties defined by
    Code Generation
    Runtime Library
    and
    Advanced
    Calling Convention
    .
Additional settings for use with the Microsoft Visual C++* Platform Toolset are available on the
Intel® Performance Libraries
category, found at
Tools
Options
.
The "Use Intel® MKL", "Use Intel® DAAL", "Use Intel® IPP", and "Use Intel® TBB" properties in Microsoft Visual Studio* mimic the behavior of the /Qmkl, /Qdaal, /Qipp and /Qtbb compiler options. The include and library paths to the performance library, which are installed with the selected Intel® C++ Compiler, are set up with these properties. To override this behavior refer to the article Usage of Intel® Performance Libraries with Intel® C++ Compiler in Visual Studio .
For more information, see the Intel® Integrated Performance Primitives, Intel® Threading Building Blocks, and Intel® Math Kernel Library documentation.
Optimization Notice
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