/ittapi

Intel® Instrumentation and Tracing Technology (ITT) and Just-In-Time (JIT) API

Primary LanguageRust

Intel® Instrumentation and Tracing Technology (ITT) and Just-In-Time (JIT) API

This ITT/JIT open source profiling API includes:

  • Instrumentation and Tracing Technology (ITT) API
  • Just-In-Time (JIT) Profiling API

The Instrumentation and Tracing Technology (ITT) API enables your application to generate and control the collection of trace data during its execution across different Intel tools.

ITT API consists of two parts: a static part and a dynamic part. The dynamic part is specific for a tool and distributed only with a particular tool. The static part is a common part shared between tools. Currently, the static part of ITT API is distributed as a static library and released under a BSD/GPLv2 dual license with every tool supporting ITT API.

Build

To build the library:

  • On Windows, Linux, FreeBSD and OSX: requires cmake to be set in PATH
  • Windows: requires Visual Studio installed or requires Ninja to be set in PATH
  • To list available build options execute: python buildall.py -h
usage: buildall.py [-h] [-d] [-c] [-v] [-pt] [--force_bits] [-ft]

optional arguments:
  -h, --help      show this help message and exit
  -d, --debug     specify debug build configuration (release by default)
  -c, --clean     delete any intermediate and output files
  -v, --verbose   enable verbose output from build process
  -pt, --ptmark   enable anomaly detection support
  --force_bits    specify bit version for the target
  -ft, --fortran  enable fortran support

License

All code in the repo is dual licensed under GPLv2 and 3-Clause BSD licenses

Security

Please refer to the security policy for reporting vulnerabilties.