6c35d632f2
Add test with multiple processes
2021-12-10 18:29:38 +01:00
Antoni Navarro
4719917ba9
Change Nanos6's name to NODES
2021-12-10 14:54:34 +00:00
d6c16bdb24
Add .gitlab-ci.yml file
2021-12-10 13:14:29 +01:00
19c535ef02
Poison assert()
2021-12-09 16:56:24 +01:00
f705d707b6
Remove asserts from utlist.h
2021-12-09 16:55:42 +01:00
df968eb4d0
Remove asserts in heap.h
2021-12-09 16:50:18 +01:00
6b9e083225
Fix typo
2021-12-09 16:43:07 +01:00
24a6ce2f2c
Fix error reporting in ovnisort
2021-12-09 16:42:47 +01:00
f8d989b214
Add extra checks when running a new task in nosv
2021-12-09 16:08:45 +01:00
de70a057d4
Use signed integers for CPU ids
2021-12-09 16:08:45 +01:00
75c32f3a99
Transform all aserts into unconditional checks
2021-12-09 16:08:36 +01:00
2046833700
Improve error handling in libovni
...
- Transform asserts into unconditional checks
- Abort as soon as an error is encountered
- Remove return errors
2021-12-09 14:18:33 +01:00
2ffd8407e0
Remove unneeded files from gitignore
2021-12-09 14:17:02 +01:00
9d32031552
Include the tests after loading MPI
2021-12-09 14:17:02 +01:00
4dc3b6116e
Add UBsan build type
2021-12-09 14:17:02 +01:00
e8860a5f99
Inform of failed function in perror()
2021-12-09 14:11:57 +01:00
ca9bbf6401
Close file descriptors after mmap
...
Now is no longer needed to increase the limit of the maximum number of
file descriptors opened when loading large traces.
2021-12-07 14:23:52 +01:00
50081b0dc0
Allow empty unsorted regions
...
Additionally, the check mode (-c) ensures that a trace has been properly
sorted.
2021-12-02 10:37:53 +01:00
e1c433a1e7
Add kernel events documentation
2021-12-02 10:37:53 +01:00
ca95fb34a3
Add kernel support for context switch events
...
These events only show if a thread has been removed from the CPU, but
doesn't provide information about what other thread caused the context
switch. This type of information can be obtained even with strict
/proc/sys/kernel/perf_event_paranoid settings.
2021-12-02 10:37:53 +01:00
2961254838
Add a tool to sort unordered events
...
The region of past events must be enclosed by the OU[ and OU] events and
all the events within the region must be sorted. The sorting mechanism
looks back up to 10000 events, so it may fail if they are too far away
in the past.
2021-12-02 10:37:52 +01:00
766feb9fab
Allow the traces to be modified
2021-12-02 10:36:47 +01:00
d79b887182
Remove ovni_clock_update()
...
The clock is now managed by the user, using the ovni_clock_now()
function to sample the current value and ovni_ev_set_clock() to set the
event clock timestamp. This change allows events with custom clock
values.
2021-12-02 10:36:47 +01:00
Kevin Sala
88d79aec8e
Fixing compilation of test/flush.c
...
Fixes #25
2021-11-30 13:05:06 +01:00
Kevin Sala
9c371d8c12
Installing Paraver CFG files in PREFIX/share/ovni
...
Closes #26
2021-11-30 11:49:03 +01:00
Kevin Sala
345bb7e98a
Simplifying TAMPI's emulator code
2021-11-29 15:16:44 +01:00
5e2409f69f
Ensure only one thread is running per CPU
2021-11-29 11:12:11 +01:00
9bf99ad6a0
Add virtual flag to CPUs
2021-11-29 11:12:11 +01:00
5eadcb404e
Use const qualifier in public ovni.h functions
2021-11-19 17:09:39 +01:00
a663f2c11b
Allocate only the required CPUs
2021-11-19 16:48:53 +01:00
8153742c1f
Use a linked list for threads in each CPU
...
Allows for unlimited threads in each CPU.
2021-11-19 16:48:53 +01:00
2e659f6dd3
Remove unused loom members
2021-11-19 16:48:53 +01:00
ffd492e922
Allocate only the required threads
2021-11-19 16:48:53 +01:00
bed8c35980
Allocate only the required processes
2021-11-19 16:48:53 +01:00
3e35f3d88b
Fix memory leaks
2021-11-19 16:48:53 +01:00
8c58a7a6ab
Add address sanitizer build type
2021-11-19 16:48:53 +01:00
25cf3a8585
Allocate only the needed looms
2021-11-19 16:48:53 +01:00
d54c287ec8
Split ovni trace funtions to another source file
2021-11-19 16:48:53 +01:00
34701b2219
Transform bad exits into aborts in channels
2021-11-19 16:47:35 +01:00
1b9225dd2a
Add cmake option to enable debug logs
...
It can be enabled with -DENABLE_DEBUG_LOG=ON
2021-11-19 16:29:44 +01:00
cddda71cfb
Early duplicate state detection in channels
...
These checks allows the emulator to abort at the moment in which two
consecutive states are going to be emitted by the channel, showing the
culpirit in the backtrace. Waiting for the check in chan_emit() hides
the source of the problem.
2021-11-19 16:22:37 +01:00
9944b391ae
Mark as dirty all CPU channels
2021-11-17 12:11:13 +01:00
557371e836
Only allow and emit state transitions
...
Fixes the ghost events shown in the PRV trace. Only transitions to a
different state are allowed now.
2021-11-17 12:08:25 +01:00
78f5db4bce
Add testing instructions to README
2021-11-16 19:22:55 +01:00
ba36f5702c
Fix the test driver
2021-11-16 19:22:48 +01:00
def2510086
Remove janson.h as a build dependency
2021-11-16 19:20:50 +01:00
8eef8d0e60
Ignore only the build directory
2021-11-16 19:20:50 +01:00
85c1666f90
Prefix program names with "ovni"
...
The "emu" and "dump" programs now are called "ovniemu" and "ovnidump".
2021-11-16 19:20:50 +01:00
5fed28bad8
Use modern target-based dependency for MPI
2021-11-16 19:20:50 +01:00
77adb27cb9
Use <PackageName>_ROOT variables if possible
2021-11-16 19:20:50 +01:00