Open Trace Format 2’s Python interface¶
The OTF2 library provides an interface to write and read trace data.
OTF2 is developed within the Score-P project. The Score-P project is funded by the German Federal Ministry of Education and Research. OTF2 is available under the BSD open source license that allows free usage for academic and commercial applications.
About the Python interface¶
The Python OTF2 interface comprises two parts.
The low-level interface is implemented using ctypes
. The main goal for the low-level
interface was to hide ctypes from the user. Besides that, it sticks as near as possible to the
original C interface. See The low-level OTF2 bindings for Python.
The high-level interface is built on top of the low-level interface with the aim of hiding all those nitty gritty details. This part of the interface is described here in detail.
Installing the Python package¶
The Python modules are either installed as a regular Python package or are provided by the OTF2 installation when building from the OTF2 source package. To install the latest release via pip from PyPI use:
pip install [-U] otf2
You can also install the Python package from a source directory. The standalone Python packages come with a shared OTF2 library of the same version.
Accessing the Python package from a full OTF2 installation¶
The Python modules are also installed into the OTF2 installation. To access these modules
you need to add this path to PYTHONPATH
. otf2-config
provides this path
via the --pythonpath
parameter:
Bash:
export PYTHONPATH=$PYTHONPATH:$(otf2-config --pythonpath)
Csh:
setenv PYTHONPATH $PYTHONPATH:`otf2-config --pythonpath`
What to read next?¶
If you are new to tracing in general or new to OTF2, you should start with reading the Basics.
When you are familiar with that, or you want to get your hands wet as quickly at possible, the Examples will help you.
If you have specific questions, the Reference will hopefully help you.