Go to file
Rodrigo Arias 505245d54c Implement emulator logic to parse mark metadata
The marks are parsed from the metadata definition, then merged from all
threads and a new channel for each mark type is created. The channel
type is specified using a flag when calling ovni_mark_type(), so the
channels is set to single or stack. For now, only ovni_mark_push() and
ovni_mark_pop() are implemented.
2024-06-19 12:26:35 +02:00
.gitea/workflows Add Gitea CI workflow 2024-05-09 15:36:39 +02:00
cfg Update nOS-V state colors in paraver CFG 2024-06-12 16:52:30 +02:00
cmake Add a fibonacci test to cause context switches 2024-03-21 17:07:19 +01:00
doc Add nosv.can_breakdown attribute check 2024-06-18 12:06:42 +02:00
include Implement emulator logic to parse mark metadata 2024-06-19 12:26:35 +02:00
src Implement emulator logic to parse mark metadata 2024-06-19 12:26:35 +02:00
test Implement emulator logic to parse mark metadata 2024-06-19 12:26:35 +02:00
.clang-format Allow single line enums 2023-04-20 10:53:11 +02:00
.gitignore Ignore some directories and tags 2022-09-29 16:51:59 +02:00
.gitlab-ci.yml Port nix CI to flakes 2023-10-19 11:18:45 +02:00
.readthedocs.yaml Add .readthedocs.yaml file 2023-11-08 16:29:00 +01:00
CHANGELOG.md Add nosv.can_breakdown attribute check 2024-06-18 12:06:42 +02:00
CMakeLists.txt Release version 1.9.1 2024-05-10 15:31:38 +02:00
COPYING Add GPLv3 and MIT licenses 2021-11-03 11:32:17 +01:00
flake.lock Update OpenMP emulation model 2024-03-12 11:35:18 +01:00
flake.nix Add nosv.can_breakdown attribute check 2024-06-18 12:06:42 +02:00
mkdocs.yml Document version changes in emulator models 2024-03-14 13:56:37 +01:00
README.md Change the readme to markdown format 2022-11-14 10:40:26 +01:00

Ovni logo

The ovni project is composed of a runtime library (libovni.so), which generates a fast binary trace, and post-processing tools such as the emulator ovniemu, which transform the binary trace to the PRV format, suitable to be loaded in Paraver.

The libovni.so library is licensed under MIT, while the rest of tools are GPLv3 unless otherwise stated.

For more information, read the documentation online or take a look at the doc/ directory. You can display the documentation in HTML by running mkdocs serve from the root directory.

To build ovni you would need a C compiler, MPI and cmake version 3.20 or newer. To compile in build/ and install into $prefix use:

$ mkdir build
$ cd build
$ cmake -DCMAKE_INSTALL_PREFIX=$prefix ..
$ make
$ make install

To run the tests you can run (from the build directory):

$ make test

See cmake(1) and cmake-env-variables(7) to see more information about the variables affecting the generation and build process.