You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The instrumenter ist the key part of the bindings.
65
-
He registers with the Python tracing interface, and cares about the fowarding of events to Score-P.
66
-
There are currently three different instrumenter types available as described in the following section [Instrumenter Types](#instrumenter-types) .
66
+
It registers with the Python tracing interface, and cares about the fowarding of events to Score-P.
67
+
There are currently five different instrumenter types available as described in the following section [Instrumenter Types](#instrumenter-types) .
67
68
A user interface, to dynamically enable and disable the automatic instrumentation, using the python hooks, is also available and described under [Instrumenter User Interface](#instrumenter-user-interface)
68
69
69
70
### Instrumenter Types
70
-
With version 2.0 of the python bindings, the term "instrumenter" is introduced. The instrumenter describes the class that maps the Python `trace` or `profile` events to Score-P. Please be aware, that `trace` and `profile` does not refer to the traditional Score-P terms of tracing and profiling, but to the Python functions [sys.settrace](https://docs.python.org/3/library/sys.html#sys.settrace) and [sys.setprofile](https://docs.python.org/3/library/sys.html#sys.setprofile).
71
+
With version 2.0 of the python bindings, the term "instrumenter" is introduced.
72
+
The instrumenter describes the class that maps the Python `trace` or `profile` events to Score-P.
73
+
Please be aware, that `trace` and `profile` does not refer to the traditional Score-P terms of tracing and profiling, but to the Python functions [sys.settrace](https://docs.python.org/3/library/sys.html#sys.settrace) and [sys.setprofile](https://docs.python.org/3/library/sys.html#sys.setprofile).
71
74
72
75
The instrumenter that shall be used for tracing can be specified using `--instrumenter-type=<type>`.
73
-
Currently there are the following tacers available:
76
+
Currently there are the following instrumenters available:
74
77
*`profile` (default) implements `call` and `return`
75
78
*`trace` implements `call` and `return`
79
+
*`cProfile` / `cTrace` are the same as the above but implemented in C++
76
80
*`dummy` does nothing, can be used without `-m scorep` (as done by user instrumentation)
77
81
78
82
The `profile` instrumenter should have a smaller overhead than `trace`.
83
+
Using the instrumenters implemented in C++ additionally reduces the overhead but those are only available in Python 3.
79
84
80
85
It is possible to disable the instrumenter passing `--noinstrumenter`.
81
86
However, the [Instrumenter User Interface](#instrumenter-user-interface) may override this flag.
where `name` defines the name of the parameter or region, while `val` or `string` represents the value that is passed to Score-P.
204
+
where `name` defines the name of the parameter or region, while `val` or `string` represents the value that is passed to Score-P.
200
205
201
-
Disabeling the recording with Score-P is still also possilbe:
206
+
Disabling the recording with Score-P is still also possible:
202
207
203
208
```
204
209
scorep.user.enable_recording()
205
210
scorep.user.disable_recording()
206
211
```
207
212
208
-
However, please be aware that the runtime impact of disabeling Score-P is rather small, as the instrumenter is still active. For details about the instrumenter, please see [Instrumenter](#Instrumenter).
213
+
However, please be aware that the runtime impact of disabling Score-P is rather small, as the instrumenter is still active.
214
+
For details about the instrumenter, please see [Instrumenter](#Instrumenter).
209
215
210
216
## Overview about Flags
211
217
212
218
The following flags are special to the python bindings:
213
219
214
-
*`--noinstrumenter` disables the instrumentation of python code. Usefull for user instrumentation and to trace only specific code regions using `scorep.instrumenter.enable`.
220
+
*`--noinstrumenter` disables the instrumentation of python code. Useful for user instrumentation and to trace only specific code regions using `scorep.instrumenter.enable`.
215
221
*`--instrumenter-type=<type>` choose an instrumenter. See [Instrumenter](#Instrumenter).
216
222
*`--keep-files` temporary files are kept.
217
223
@@ -235,7 +241,8 @@ To disable compiler instrumentation, please specify:
235
241
python -m scorep --nocompiler <script.py>
236
242
```
237
243
238
-
For other thread schemes just specify `--thread=<something>`. E.g. :
244
+
For other thread schemes just specify `--thread=<something>`.
245
+
E.g. :
239
246
240
247
```
241
248
python -m scorep --thread=omp <script.py>
@@ -246,7 +253,7 @@ Please be aware the `--user` is always passed to Score-P, as this is needed for
0 commit comments