84ae4ee056
Add OpenMP untied RT test
...
Executing the taskyield in a loop causes the runtime to maximize the
probablily that we end up running the task again before we have the
chance to emit the PPe event, so making the emulator panic as this
breaks the current OpenMP task model.
2025-05-07 16:39:37 +02:00
ae8edc5985
Add nOS-V resubmit-race RT test
2025-04-25 15:41:12 +02:00
b4f9b87ec0
Increase timeout for bench6 tests to 5 minutes
2025-04-25 12:05:48 +02:00
3018cdf54e
Add b6_heat_tampi_ompv bench test
2025-04-25 11:47:50 +02:00
9dec20d461
Add heat tampi bench test
2025-04-25 11:47:50 +02:00
9ba303f4ed
Rename heat test to b6_heat_ompv
2025-04-25 11:47:50 +02:00
b548f2f877
Ensure the heat PRV traces are not too big
2025-04-25 11:47:50 +02:00
09b84d05b1
Run heat more times with smaller blocksize
2025-04-25 11:47:50 +02:00
51ea16a85a
Check packages and features once
...
Also move libompv detection to its own cmake module.
2025-04-25 11:47:50 +02:00
9b373fb16c
Add bench6 test to run full mini-apps
2025-04-25 11:47:50 +02:00
81c137a65e
Add OpenMP simple breakdown support
...
For now we only show the breakdown of the label and subsystem, without
the idle information.
2025-04-25 11:47:40 +02:00
1dcb3f4822
Check ovniemu -b works without can_breakdown set
...
Ensure that we can successfully process a trace that has nOS-V threads
without the can_breakdown flag set to true. We simply don't enable the
nOS-V breakdown, but other models can enable it.
2025-04-23 15:32:52 +02:00
a1a2941b64
Allow -b flag without nosv.can_breakdown
...
As we now have OpenMP and nOS-V models for breakdown, we may have the
situation in which nOS-V traces don't have enough events to enable the
breakdown model, but we do on OpenMP. Rather than stopping, disable the
nOS-V model with a warning and continue.
2025-04-23 15:32:52 +02:00
5eec5a17f3
Add passive and active tests for OpenMP
...
Makes sure that we are no longer generating too many pause events.
2025-04-23 15:12:40 +02:00
c847ec19ad
Add noisy yield test in nOS-V
...
Ensure we can call nosv_yield in a loop without generating a lot of
events when using the level 3 instrumentation level. Noisy events are
now moved to level 4, so they shouldn't appear on the trace.
Additionally, make sure that the noisy events appear on level 4.
2025-03-21 16:57:44 +01:00
Raúl Peñacoba Veigas
9826879bcd
Add OpenMP support for labels and taskID views
...
CI / build:rt (push) Failing after 15s
CI / build:debug (push) Successful in 13s
CI / build:asan (push) Failing after 13s
CI / build:nompi (push) Successful in 13s
CI / build:compilers (push) Successful in 13s
CI / build:local (push) Successful in 23s
Co-authored-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2024-12-09 16:41:16 +01:00
a297adab7a
Add tests for nosv_cond
2024-11-08 10:13:00 +01:00
180ac51aea
Use fixed clock for sort-into-previous-region test
...
With large values of clocks, awk starts to lose precision due handling
the time as floating point values, which causes the test to fail. By
always setting the clock of the events to a known value we can just
compare the outcome as-is, without performing any arithmetic operation.
Fixes: https://pm.bsc.es/gitlab/rarias/ovni/-/issues/205
2024-11-06 11:51:57 +01:00
73b19ca1c4
Allow setting manual clock for emu events
2024-11-06 11:51:55 +01:00
fe860b2e38
Add partial-cpus test
2024-11-05 10:56:29 +01:00
7cf69d055a
Remove ovni as explictly required model
...
It is already added as a requirement in ovni_thead_init().
2024-10-25 14:22:37 +02:00
ea77f3d72e
Fix unit-stream test
2024-10-25 13:41:15 +02:00
bb4e4d7e56
Emit rank information after ovni_thread_init
2024-10-25 13:41:15 +02:00
4c2071e906
Make calling ovni_thread_require() optional
...
When only emitting ovni events, there is no need to explicitly require
the ovni model, as libovni will already pre-populate it for the user.
2024-10-25 13:41:15 +02:00
5c11c469f2
Make ovni.require a mandatory attribute
...
We no longer accept streams that don't have the ovni.require attribute.
2024-10-25 13:41:15 +02:00
361290e24f
Parse metadata from proc and loom directly
...
All the metadata keys are known to proc and loom only, making it
self-contained. The metadata.c module is no longer needed.
2024-10-25 13:41:15 +02:00
65d1a5ecec
Add merge-cpus-loom test
...
Ensure we can merge the information of CPUs from multiple threads.
2024-10-25 13:41:15 +02:00
6af367ba76
Fix spawn-task-external test
...
It is mandatory to call ovni_thread_free().
2024-10-25 13:41:15 +02:00
65907a96f4
Update tmpdir-metadata test
2024-10-25 13:41:15 +02:00
4180300e87
Reject incomplete thread streams
2024-10-25 13:41:15 +02:00
c61f5a8772
Ensure the thread is ready before adding cpus
2024-10-25 13:41:15 +02:00
fdcff58318
Fix unit tests
2024-10-25 13:41:15 +02:00
36cf3121d1
Fix implicit signed conversions
CI / build:rt (push) Failing after 12s
CI / build:asan (push) Failing after 12s
CI / build:nompi (push) Successful in 59s
CI / build:debug (push) Successful in 1m50s
CI / build:local (push) Successful in 2m2s
CI / build:compilers (push) Successful in 2m27s
2024-09-09 13:44:05 +02:00
b2d91391b3
Add sort-into-previous-region emu test
2024-09-09 09:10:04 +02:00
13f70be87b
Set nOS-V version required for tests to 2.3.1
...
Includes the required fixes for the kernel ring buffer tests.
2024-09-09 08:51:04 +02:00
71aa33d22f
Use string to set ovni.kernel_ringsize
2024-09-09 08:51:04 +02:00
4c3da12ea1
Fix typos in nOS-V kernel test
2024-09-09 08:51:04 +02:00
a47082730a
Ensure that nOS-V aborts on ring overflow
2024-09-09 08:51:04 +02:00
99dc3904af
Add overflow and normal kernel nOS-V tests
2024-09-09 08:51:04 +02:00
acf18c1bb4
Make nOS-V kernel overflow test configurable
2024-09-09 08:51:04 +02:00
e9788e22ad
Add test kernel ring overflow test for nOS-V
...
There is a problem in the way we are reading the buffer in nOS-V, which
fails when the ring buffer gets full. This regression test ensures it is
fixed.
Reported-by: David Álvarez <david.alvarez@bsc.es>
2024-09-09 08:51:04 +02:00
c8750b9dfd
Enable -Wconversion and -Wsign-conversion
...
Prevents implicit conversions to go undetected, as they will have to be
explicit now.
2024-09-09 08:28:02 +02:00
2457e50712
Use always base 10 integer formats with scanf()
...
The %i printf variant tries to autodetect the base, so 010 becomes 8.
2024-07-24 16:36:54 +02:00
92c36502bc
Reduce heat and fibonnacci test sizes
2024-07-24 16:09:47 +02:00
97282ff051
Increase test timeout to 60 seconds
2024-07-24 16:09:47 +02:00
91e8367d35
Set timeout to 30 seconds for tests
2024-07-24 15:12:09 +02:00
129020e1c5
Fix format errors in printf-like functions
2024-07-24 15:12:09 +02:00
Miquel Vidal i Pinyol
3103018404
Use format macro constants for fprintf and fscanf family functions
2024-07-24 15:12:09 +02:00
Miquel Vidal i Pinyol
478ed1f5d0
Use proper format specifiers
...
Allows compiling for architectures with different data type sizes
2024-07-24 15:12:09 +02:00
1ab605b70d
Fix calloc() argument order
...
Catched by a new gcc 14.1.1 warning.
2024-07-22 16:45:29 +02:00