834b33af33
Use SPDX license identifiers
2022-09-29 14:16:47 +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
04edd9be2e
Rework blocking wait for subsystem
2022-09-14 13:21:06 +02:00
008ba5a8ef
Add processing ready tasks support
2022-09-12 16:16:11 +02:00
6329c8c982
Add support for Nanos6 signal event
2022-09-12 16:16:11 +02:00
8e690f0e44
Add Nanos6 support for memory allocation
2022-09-12 16:16:10 +02:00
982bc39490
Move thread type events to another channel
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
4d6e5b58ea
Reorder Nanos6 subsystems
2022-09-12 16:16:10 +02:00
David Alvarez
b226afb630
Implement Nanos6 emulator model
2022-09-12 16:16:10 +02:00
eb060cffb9
Remove trailing whitespace
2022-06-17 16:30:20 +02:00
b0f693360c
Use a hash of the type label to derive the gid
...
This avoids different processes running tasks with the same type label
to have different colors.
2022-06-02 15:28:04 +02:00
c22457d7d3
Add dynamic PCF types and values
2022-06-01 17:17:13 +02:00
Antoni Navarro
4719917ba9
Change Nanos6's name to NODES
2021-12-10 14:54:34 +00: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
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
6f8b46e753
Rename channel NTHREADS by NRTHREADS
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
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
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
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
1d4796521b
Add cooling and warming states
2021-10-21 16:53:00 +02:00
d6afd5c528
Use a table to convert channel ids to PRV types
2021-10-21 16:39:36 +02:00
28fa152169
Add preliminar nosv CPU subsystem support
2021-10-21 16:05:01 +02:00
c846e03899
Add allocation subsystem
2021-09-28 19:32:16 +02:00
b60c6da764
Emit sched fake events as well
2021-09-28 19:32:16 +02:00
31e3f1218f
Add nos-v scheduler subsystem events
2021-09-28 19:32:16 +02:00
1da0f1a096
Generate PCF and ROW files
2021-08-03 20:47:02 +02:00