Commit Graph

58 Commits

Author SHA1 Message Date
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
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
97320eda4e Add linter mode 2021-11-16 19:20:50 +01:00
73d9e323b9 Remove const array initialization
The implementation is not mandatory and clang doesn't support it.
2021-11-16 19:20:45 +01:00
Antoni Navarro
dc6713f75c Further renames of Nanos6 labels and others 2021-11-12 16:15:33 +01:00
Antoni Navarro
c9b189feb8 Refactor emu_nanos6 into a simpler function 2021-11-12 11:53:53 +01:00
Antoni Navarro
04895a7aea Rename Nanos6-Lite to Nanos6 2021-11-12 11:35:38 +01:00
Antoni Navarro
a9223b3886 Add Nanos6-Lite Instrumentation 2021-11-05 15:03:49 +01:00
5dc195a037 Remove nosv code in favor of the thread type 2021-11-03 11:33:14 +01:00
d3e87c2272 Add GPLv3 and MIT licenses 2021-11-03 11:32:17 +01:00
be7375a69b Add support for sfree in nosv subsystems 2021-11-03 11:32:08 +01:00
7bd8f960f8 Implement flushing events in the emulator 2021-10-21 16:53:01 +02:00
98db4a2fe0 Remove virtual events 2021-10-21 16:53:00 +02:00
6f8b46e753 Rename channel NTHREADS by NRTHREADS 2021-10-21 16:53:00 +02:00
9d83a319b0 Remove unused cpu members and simplify comments 2021-10-21 16:53:00 +02:00
d8845acb9f Merge error states together 2021-10-21 16:53:00 +02:00
5a940540d3 Use priority queue for streams and fast channels
A priority queue (in heap.h) is used to keep the next event ready in the
emulator loop. Additionally, a list of dirty channels is keept to
limit the complexity of the propagation and emit phases.
2021-10-21 16:53:00 +02:00
b9f9ae1a59 Set the loom in the CPU 2021-10-21 16:53:00 +02:00
151f5a2b77 Set the loom in the process 2021-10-21 16:53:00 +02:00
Kevin Sala
52ba53ffda Gathering nOS-V API instrumentation as new subnamespace 2021-10-21 16:53:00 +02:00
8f407d6ad2 Prefix subsystem values with "NOSV_" 2021-10-21 16:53:00 +02:00
78656ce83a Remove unused nosv ss 2021-10-21 16:53:00 +02:00
8ff3359c34 Add experimental OpenMP support 2021-10-21 16:53:00 +02:00
Kevin Sala
a7463723bc Adding TAMPI instrumentation 2021-10-21 16:53:00 +02:00
Kevin Sala
d2a349e895 Fixing scheduling events' identifiers 2021-10-21 16:53:00 +02:00
Kevin Sala
7def854b8b Adding subsystem states for some nOS-V API calls
This commit includes states for the nosv_pause, nosv_yield,
and nosv_waitfor and nosv_scheduling_point API calls.
2021-10-21 16:53:00 +02:00
019668ac53 Use local bursts per thread 2021-10-21 16:53:00 +02:00
1d4796521b Add cooling and warming states 2021-10-21 16:53:00 +02:00
3f22afc4b3 Handle all events with CPU and thread channels 2021-10-21 16:53:00 +02:00
6b83789460 Add CPU channels 2021-10-21 16:53:00 +02:00
dd1567e0ec Add support for tracking modes in channels 2021-10-21 16:52:51 +02:00
d6afd5c528 Use a table to convert channel ids to PRV types 2021-10-21 16:39:36 +02:00
8d043a8350 Keep a global list of threads and CPUs 2021-10-21 16:34:04 +02:00
fbfbb8fc0f Introduce channels 2021-10-21 16:15:29 +02:00
13e6eabf33 Move PRV event types to emu.h 2021-10-21 16:08:03 +02:00
28fa152169 Add preliminar nosv CPU subsystem support 2021-10-21 16:05:01 +02:00
abdbd8d64c Add virtual events 2021-09-28 19:32:16 +02:00
2bd589ee9e Prefix error messages with "error: " 2021-09-28 19:32:16 +02:00
c846e03899 Add allocation subsystem 2021-09-28 19:32:16 +02:00
31e3f1218f Add nos-v scheduler subsystem events 2021-09-28 19:32:16 +02:00
Kevin Sala
8b78baa587 Fixing ovni for multiple nodes (workaround) 2021-09-21 15:15:26 +02:00
e80bcdd224 Avoid TID collisions searching only in cur_proc 2021-09-21 15:15:26 +02:00
Kevin Sala
543dd51d8f Fixing compilation errors 2021-08-10 10:16:41 +02:00
1da0f1a096 Generate PCF and ROW files 2021-08-03 20:47:02 +02:00
e6e976023d Implement the clock offset correction 2021-08-03 19:56:31 +02:00
4e971bceff Write multiple prv files and add app id view 2021-08-03 18:42:56 +02:00
60862db890 Store CPU list in a metadata.json file
This allows early access to the CPU list in order to emit the PRV header
before consuming events from the streams.
2021-08-03 17:48:37 +02:00
763bcf7c33 Store cpus in each loom 2021-08-02 21:13:25 +02:00
43950a13f1 Load arbitrary loom names 2021-08-02 20:23:57 +02:00