Skip to content

Commit

Permalink
[docs] Add information about the profiler feature
Browse files Browse the repository at this point in the history
  • Loading branch information
giordano committed Nov 28, 2024
1 parent 79c17be commit 024a9d4
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 0 deletions.
28 changes: 28 additions & 0 deletions docs/use.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,3 +104,31 @@ reframe -c benchmarks/ -R -r -t example
```

Tests can contain multiple tags. To create a custom set of benchmarks, add a new tag to the tests you want to include in the set.

## Running a benchmark with a profiler (experimental)

!!! note "Experimental feature"

This is an experimental feature and its interface may be changed in the future on short notice.
Feedback to improve it is welcome!

This framework allows you to run a profiler together with a benchmark application.
To do this, you can set the `profiler` attribute on the command line using the `-S profiler=...` syntax, e.g.

```bash
reframe -c benchmarks/ -R -r -t example -S profiler=vtune
```

Supported values for the profiler attribute are:

* `advisor-roofline`: it produces a [roofline model](https://en.wikipedia.org/wiki/Roofline_model) of your program using [Intel Advisor](https://www.intel.com/content/www/us/en/developer/tools/oneapi/advisor.html);
* `nsight`: it runs the code with the [NVIDIA Nsight Systems](https://developer.nvidia.com/nsight-systems) profiler;
* `vtune`: it runs the code with the [Intel VTune](https://www.intel.com/content/www/us/en/developer/tools/oneapi/vtune-profiler.html) profiler.

!!! info "Availability and requirements"

Most profilers are available only on some platforms (e.g. Intel profilers are only available on the x86 architecture), double check if the desired profiler is available for the system you want to use.
Furthermore, to collect useful information with some profilers you may need specific values of the Linux `perf_event_paranoid` setting, typically less than or equal to 2, you can check the value on a specific node by reading the content of the file `/proc/sys/kernel/perf_event_paranoid`.

The profiler trace collected during the run will be automatically copied to the output directory after a successful run.
Toward the bottom of the standard output file you should find some information about how to visualise the profiling trace with the tools corresponding to the profiler used.
2 changes: 2 additions & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,8 @@ theme:
icon: material/weather-night
name: Switch to light mode
markdown_extensions:
- admonition
- pymdownx.details
- pymdownx.highlight:
anchor_linenums: true
line_spans: __span
Expand Down

0 comments on commit 024a9d4

Please sign in to comment.