Commit Graph

66 Commits

Author SHA1 Message Date
e4da326c76 Update emulator event list
Generates the emulation event list by using the ovnievents tool.
2024-01-30 12:02:02 +01:00
bae38d1d26 Describe event declaration language 2023-12-21 14:55:05 +01:00
e002db72fd Correct documentation on thread metadata 2023-11-16 12:39:14 +01:00
f02994c149 Document thread metadata in trace spec 2023-11-16 12:39:14 +01:00
f34479712a Add model version in documentation 2023-11-16 12:39:14 +01:00
d836b7e46d Include changelog in documentation 2023-11-16 12:39:14 +01:00
ab42ac4557 Add thread metadata 2023-11-16 12:21:50 +01:00
4b4f1bd218 Don't modify nOS-V subsystem state on task pause
In nOS-V, when a task was paused via the VTp event, two things were
happening: 1) the task state was set to pause and 2) the subsystem state
"Task: Running" was being popped.

This causes a problem when a task calls nosv_submit() in blocking mode,
as it will call nosv_pause() which will emit a VTp event from a
subsystem different than "Task: Running".

To solve this conflict, we handle the subsystems state and the task
state separately with the VTp and VTr events. The subsystem state "Task:
Running" no longer is connected to the state of the task and only shows
if we entered the body of the task or not. It has now been renamed to
"Task: In body".

The new state "Task: In body" represents that the task body has begun
the execution and is still in the stack, but the task may be paused. The
subsystem is not changed by the VTp (pause) or VTr (resume) events.

Fixes: https://pm.bsc.es/gitlab/rarias/ovni/-/issues/128
2023-10-23 11:26:17 +02:00
Kevin Sala
7b4ebca002 Add OVNI_TRACEDIR envar to change trace directory
This commit introduces the OVNI_TRACEDIR environment variable to change
the directory where traces are generated. By default, when the envar is
not defined, the trace is still generated in the ovni directory. The
envar can take a trace directory name, a relative path to the directory,
or its absolute path. In the first case, the directory is created in the
current path $PWD.

Both libovni (rt) and ovnisync read this environment variable.
2023-10-23 07:49:28 +00:00
Kevin Sala
3ea89edac7 Update Sonar repository URL pointing to the public GitHub 2023-10-23 07:38:15 +00:00
Kevin Sala
9a628e78ca Add MPI model with interface view 2023-09-06 18:11:18 +02:00
Kevin Sala
276afd5479 Add TAMPI model with subsystems view 2023-08-22 18:13:29 +02:00
Kevin Sala
9269dd7202 Add nosv create and destroy API subsystem states 2023-08-17 13:23:59 +02:00
ff2f33abb9 Document sponge mode and progress events 2023-04-17 17:47:07 +02:00
63e79a9a73 Document the sponge mode in the Idle view 2023-04-14 13:39:37 +00:00
0e75a2b6ad Update the Idle view 2023-04-06 15:33:15 +00:00
14dc70c6a2 Document the breakdown view 2023-04-06 15:33:15 +00:00
a4ce0e2a1e Add Idle view in Nanos6 2023-04-06 15:33:15 +00:00
d8a9f33075 Add .obs suffix in doc of thread streams 2023-03-24 12:08:45 +00:00
757a8e9f39 Run one process of ovnisync per node 2023-03-24 12:08:45 +00:00
fb95abcc25 Update documentation on duplicate values 2023-03-24 12:08:45 +00:00
b08e148cbe Update mux documentation 2023-03-24 12:08:45 +00:00
5adfd80bce Move user guide docs to a new directory 2023-03-24 12:08:45 +00:00
5741cc383f Add developer documentation 2023-03-24 12:08:45 +00:00
9202085267 Remove tampi and openmp outdated models 2023-03-24 12:08:45 +00:00
b6ce54b7ee Add version check and soname for libovni
Adds ovni_version_check() to test the version at runtime, set the
SONAME to the major version and install a symlinks to the complete
version:

  libovni.so -> libovni.so.1
  libovni.so.1 -> libovni.so.1.0.0
  libovni.so.1.0.0
2022-12-13 13:11:44 +01:00
c272701d4f Set logo background to solid white 2022-11-14 17:08:07 +01:00
4381d601aa Add installation instructions 2022-11-14 10:40:32 +01:00
b1b4f37032 Copy Paraver configs into the trace directory
Keeps the trace self-contained.
2022-11-09 16:09:33 +01:00
a2702ad92a Add requeriments.txt for readthedocs 2022-11-04 11:49:26 +01:00
675c4f9ee8 Store the clock offset table inside the trace
The ovnisync tool now generates it by default inside ovni directory,
and the emulator recognizes it by default if exists.
2022-09-29 14:28:47 +02:00
b44c245405 Use 6t events for subsystem transition
No longer mix task state transitions (6T) with subsystem changes.
2022-09-21 17:30:23 +02:00
baff1c050b Add preliminar support for taskfor
The emulator cannot handle tasks that are executed multiple times and
concurrently. The task for executes a single task (with unique id) multiple
times by using different arguments. The task model needs to be extended to
support the taskfor clause properly. In the meanwhile, we simple set the
subsystem to be running a taskfor.
2022-09-21 13:30:22 +02:00
0fea805b44 Clarify "Task: Running body" subsystem state 2022-09-21 13:15:55 +02:00
957cdaa81e Fix processReadyTask event value in doc 2022-09-20 10:27:49 +02:00
7962b835f4 Add missing doc subsystem items for Nanos6 2022-09-14 13:21:17 +02:00
81e5f19267 Update Nanos6 events 2022-09-12 16:16:11 +02:00
576936ef01 Add CPU idle and active events 2022-09-12 16:16:10 +02:00
903244d22b Update documentation 2022-09-12 16:16:10 +02:00
ac1ae8e69d Use one event per blocking type in Nanos6 2022-09-12 16:16:10 +02:00
2679655b2a Add more documentation 2022-09-12 16:16:10 +02:00
135f3dc7aa Fix some documentation problems 2022-09-12 16:16:10 +02:00
a1b668a872 Convert documentation to Markdown and mkdocs 2022-09-12 16:16:10 +02:00
6141c2e303 Document nanos6 subsystem view 2022-09-12 16:16:10 +02:00
David Alvarez
da56cd6d68 Add some Nanos6 emu documentation 2022-09-12 16:16:10 +02:00
David Alvarez
7da7ff8c1c Update event descriptions 2022-09-12 16:16:10 +02:00
1cfc31e02c Clarify nanos6 submit events 2022-09-12 16:16:10 +02:00
1c6ecdc6ea Add scheduler submit events 2022-09-12 16:16:10 +02:00
89fbdaf5ea Begin event definitions for nanos6 2022-09-12 16:16:10 +02:00
00872418a1 Add stream header documentation 2022-07-28 16:16:07 +02:00