Go to file
Rodrigo Arias 0439399f05 Fix ovni_thread_isready() after ovni_thread_free()
Until now, the value returned by ovni_thread_isready() was still
non-zero when the thread stream was destroyed in ovni_thread_free()
This was making it impossible to detect when a stream was destroyed.

This change makes it return 0 after ovni_thread_free() by using a new
finished flag. The flag keeps track on then the stream is destroyed,
preventing double initialization of a free stream.
2023-12-19 17:30:20 +01:00
cfg Add MPI model with interface view 2023-09-06 18:11:18 +02:00
cmake Use pkg-config to find nOS-V 2023-11-08 15:58:46 +01:00
doc Correct documentation on thread metadata 2023-11-16 12:39:14 +01:00
include Remove old model_version key from proc metadata 2023-11-16 12:39:14 +01:00
src Fix ovni_thread_isready() after ovni_thread_free() 2023-12-19 17:30:20 +01:00
test Fix ovni_thread_isready() after ovni_thread_free() 2023-12-19 17:30:20 +01: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 Fix ovni_thread_isready() after ovni_thread_free() 2023-12-19 17:30:20 +01:00
CMakeLists.txt Release version 1.5.0 2023-12-15 11:34:20 +01:00
COPYING Add GPLv3 and MIT licenses 2021-11-03 11:32:17 +01:00
flake.lock flake.lock: Update 2023-12-15 11:05:59 +01:00
flake.nix Update runtimes to master with an overlay 2023-12-15 11:06:41 +01:00
mkdocs.yml Include changelog in documentation 2023-11-16 12:39:14 +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.