ittapi is a Python binding to Intel Instrumentation and Tracing Technology (ITT) API. It provides a convenient way to mark up the Python code for further performance analysis using performance analyzers from Intel like Intel VTune or others.
ittapi supports following ITT APIs:
The main goal of the project is to provide the ability to instrument a Python code using ITT API in the Pythonic way. ittapi provides wrappers that simplify markup of Python code.
import ittapi @ittapi.task def workload(): pass workload()
ittapi.task can be used as a decorator. In this case, the name of a callable object (workload function in this example) will be used as a name of the task and the task will be attributed to a default domain named ‘ittapi’. If you want to change the default name and/or other parameters for the task (e.g. task domain), you can pass them as arguments to ittapi.task:
import ittapi @ittapi.task('My Task', domain='My Task Domain') def workload(): pass workload()
Also, ittapi.task returns the object that can be used as a context manager:
import ittapi with ittapi.task(): # some code here... pass
If the task name is not specified, the ittapi.task uses call site information (filename and line number) to give the name to the task. A custom name for the task and other task parameters can be specified via arguments for ittapi.task in the same way as for the decorator form.
[TODO] intel-ittapi package is available on PyPi and can be installed in the usual way for the supported configurations:
[TODO] pip install intel-ittapi
The native part of ittapi module is written using C++20 standard, therefore you need a compiler that supports this standard, for example GCC-10 for Linux and Visual Studio 2022 for Windows.
Install the compiler and Python utilities to build module:
sudo apt install gcc g++ python3-pip
Clone the repository:
git clone https://github.com/intel/ittapi.git
Build and install ittapi:
cd python pip install .
Install Python 3.8+ together with pip utility.
Install Visual Studio 2022. Make sure that “Desktop development with C++” workload is selected.
Clone the repository
git clone https://github.com/intel/ittapi.git
Build and install ittapi
cd python pip install .