Configuring Your Build System


ITT API usage is supported on Windows*, Linux*, and Android* systems only. It is not supported for FreeBSD* or QNX* systems.

Before instrumenting your application, you need to configure your build system to be able to reach the API headers and libraries.

<install_dir> is the Intel® VTune™Amplifier installation directory.

  • Add <install_dir>/include to your INCLUDE path for C/C++ applications or <install_dir>/include/[intel64 or ia32] to your INCLUDE path for Fortran applications
  • Add <install_dir>/lib32 to your 32-bit LIBRARIES path
  • Add <install_dir>/lib64 to your 64-bit LIBRARIES path

The default installation path for the VTune Amplifier is [Program Files]\IntelSWTools\VTune Amplifier <version> on Windows* and /opt/intel/vtune_amplifier_version on Linux*. For the Intel System Studio, the default <install_dir> of the VTune Amplifier is [Program Files]\IntelSWTools\system_studio_<version>\VTune Amplifier on Windows* and one of the following on Linux:

  • For super-users: /opt/intel/system_studio_version/vtune_amplifier
  • For ordinary users: $HOME/intel/system_studio_version/vtune_amplifier

Include the ITT API Header or Module in Your Application

For C/C++ Applications

Add the following #include statements to every source file that you want to instrument:

#include <ittnotify.h>

The ittnotify.h header contains definitions of ITT API routines and important macros which provide the correct logic of API invocation from a user application.

The ITT API is designed to incur almost zero overhead when tracing is disabled. But if you need fully zero overhead, you can compile out all ITT API calls from your application by defining the INTEL_NO_ITTNOTIFY_API macro in your project at compile time, either on the compiler command line, or in your source file, prior to including the ittnotify.h file.

For Fortran Applications

Add the ITTNOTIFY module to your source files with the following source line:


Insert ITT Notifications in Your Application

Insert __itt_* (C/C++) or ITT_* (Fortran) notifications in your source code.

C/C++ example:


Fortran example:


For more information, see Instrumenting Your Application.

Link the libittnotify.a (Linux*) or libittnotify.lib (Windows*) Static Library to Your Application

You need to link the static library, libittnotify.a (Linux) or libittnotify.lib (Windows), to your application. If tracing is enabled, this static library loads the ITT API implementation and forwards ITT API instrumentation data to VTune Amplifier .

If tracing is disabled, the static library ignores ITT API calls, providing nearly zero instrumentation overhead.

For more complete information about compiler optimizations, see our Optimization Notice.
Select sticky button color: 
Orange (only for download buttons)