Commit | Line | Data |
---|---|---|
66e983e2 OD |
1 | # lttng-ust-mpi |
2 | ||
3 | Auto generation of instrumentation library for MPI with LTTng. | |
4 | ||
5 | # Requirements | |
6 | ||
7 | - babeltrace (check program) | |
8 | - clang | |
9 | - gcc | |
10 | - lttng-tools (check program) | |
11 | - lttng-ust | |
12 | - make | |
13 | - openmpi or craympi | |
14 | - openssh or srun (check program) | |
15 | - pkg-config | |
16 | - python-clang | |
17 | ||
18 | # Build | |
19 | ||
20 | Call `make` and that is it. You can pass `MPI_HEADER=path-to-mpi.h`. This will | |
21 | bypass the pkg-config finding of mpi.h. You can also pass | |
22 | `PROVIDER=my_provider` if you want to change the default provider name (mpi). | |
23 | ||
24 | The resulting `lttng-ust-mpi.so` can be used to instrument OpenMPI or CrayMPI | |
25 | with LTTng. See the `check` script for usage example. | |
26 | ||
27 | # Set of ignored functions | |
28 | ||
29 | The only function ignored is `MPI_Pcontrol`. One can extend the `forbiden_list` | |
30 | in `lttng-auto-mpi-wrappers` to ignore more functions. | |
31 | ||
32 | # Development | |
33 | ||
34 | If using the `guix` package manager, simply do `./dev-env`. |