Go to file
2022-09-20 10:30:36 +02:00
cfg Organize .cfg files into directories 2022-09-13 14:58:50 +02:00
doc Fix processReadyTask event value in doc 2022-09-20 10:27:49 +02:00
nix Add nanos6 as library and sched-add test 2022-09-13 15:36:55 +02:00
test Update Nanos6 events for tests 2022-09-20 10:30:36 +02:00
.gitignore Remove unneeded files from gitignore 2021-12-09 14:17:02 +01:00
.gitlab-ci.yml Enable CI runtime tests for Nanos6 2022-09-13 12:15:36 +02:00
chan.c Implement Nanos6 emulator model 2022-09-12 16:16:10 +02:00
chan.h Support for nested tasks 2022-04-25 12:20:33 +02:00
CMakeLists.txt Raise cmake minimum version to 3.20 2022-09-12 16:16:10 +02:00
common.h Add missing headers for log functions 2022-09-12 15:57:07 +02:00
compat.h Split glib and version check 2022-01-12 10:29:22 +01:00
COPYING Add GPLv3 and MIT licenses 2021-11-03 11:32:17 +01:00
dump.c Simplify dump format 2022-01-12 11:05:38 +01:00
emu_kernel.c Switch to edie() for errors 2022-09-13 14:22:44 +02:00
emu_nanos6.c Switch to edie() for errors 2022-09-13 14:22:44 +02:00
emu_nodes.c Switch to edie() for errors 2022-09-13 14:22:44 +02:00
emu_nosv.c Switch to edie() for errors 2022-09-13 14:22:44 +02:00
emu_openmp.c Transform all aserts into unconditional checks 2021-12-09 16:08:36 +01:00
emu_ovni.c Switch to edie() for errors 2022-09-13 14:22:44 +02:00
emu_tampi.c Switch to edie() for errors 2022-09-13 14:22:44 +02:00
emu_task.c Use one event per blocking type in Nanos6 2022-09-12 16:16:10 +02:00
emu_task.h Use one event per blocking type in Nanos6 2022-09-12 16:16:10 +02:00
emu.c Add edie() and eerr() functions 2022-09-12 16:16:10 +02:00
emu.h Reorder subsystem states for better colors 2022-09-12 16:16:11 +02:00
heap.h Remove asserts in heap.h 2021-12-09 16:50:18 +01:00
mkdocs.yml Add more documentation 2022-09-12 16:16:10 +02:00
ovni2prv.c Split ovni trace funtions to another source file 2021-11-19 16:48:53 +01:00
ovni.c Use one event per blocking type in Nanos6 2022-09-12 16:16:10 +02:00
ovni.h Add Nanos6 model version 2022-09-12 16:16:10 +02:00
ovnisync.c Transform all aserts into unconditional checks 2021-12-09 16:08:36 +01:00
parson.c Store CPU list in a metadata.json file 2021-08-03 17:48:37 +02:00
parson.h Store CPU list in a metadata.json file 2021-08-03 17:48:37 +02:00
pcf.c Rework blocking wait for subsystem 2022-09-14 13:21:06 +02:00
pcf.h Use one event per blocking type in Nanos6 2022-09-12 16:16:10 +02:00
plot-drift.py Add GPLv3 and MIT licenses 2021-11-03 11:32:17 +01:00
prv.c Transform all aserts into unconditional checks 2021-12-09 16:08:36 +01:00
prv.h Set the trace duration in the PRV header 2021-11-03 11:33:16 +01:00
README.txt Update README 2022-09-12 16:16:11 +02:00
sort.c Fix clang warnings 2022-09-12 16:16:10 +02:00
trace.c Sort threads by TID 2022-09-12 16:16:10 +02:00
trace.h Fix memory leaks 2021-11-19 16:48:53 +01:00
uthash.h Add nosv task support 2021-07-29 17:46:25 +02:00
utlist.h Remove asserts from utlist.h 2021-12-09 16:55:42 +01:00

           ovni - Obtuse but Versatile Nanoscale Instrumentation

The ovni instrumentation project is composed of a runtime library (libovni.so),
which generates a fast binary trace, and post-processing tools such as the
emulator (emu), 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, take a look at the doc/ 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.