Commit Graph

36 Commits

Author SHA1 Message Date
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