trace-v3 #7

Open
rarias wants to merge 36 commits from trace-v3 into master

36 Commits

Author SHA1 Message Date
148aaa71a1 Make all atomic operations explicit
Some checks failed
CI / build:rt (pull_request) Failing after 23s
CI / build:debug (pull_request) Successful in 23s
CI / build:nompi (pull_request) Successful in 26s
CI / build:asan (pull_request) Failing after 31s
CI / build:local (pull_request) Successful in 1m18s
CI / build:compilers (pull_request) Successful in 38s
2024-10-15 12:33:52 +02:00
cdc5b9b866 Add trace diagram and organize concepts 2024-10-09 11:51:39 +02:00
5e502b67d2 Remove trailing slashes from tracedir 2024-09-17 14:30:10 +02:00
6aba89a8a8 Rename trace-model.md to just trace.md 2024-09-17 13:31:46 +02:00
9e6f691325 Add examples in some trace concepts 2024-09-17 13:30:21 +02:00
7ce892a9ff Add example program for mark API 2024-09-17 12:59:30 +02:00
4c58f4619b Document environment variables 2024-09-17 08:47:11 +02:00
8f4aa59148 Fix unit-stream test 2024-09-17 08:27:51 +02:00
d115ecad64 Remove tracing.md 2024-09-17 08:05:27 +02:00
73ce6ed035 Update trace specification to version 3 2024-09-17 08:05:15 +02:00
bba46ac200 Explain some concepts in the documentation 2024-09-13 16:03:15 +02:00
79d17b5b0c Change hyperlinks to point to .md files
Allows mkdocs to discover broken links when the pointed document has
moved.
2024-09-13 10:56:50 +02:00
7522886d3f Emit rank information after ovni_thread_init 2024-09-13 08:58:33 +02:00
16dbc8bf5d Store rank information in the libovni thread
Prevents threads from finishing while another thread is being
initializing the rank information, causing a race to read the rank and
nranks.
2024-09-13 08:52:10 +02:00
f6fc166a38 Use atomics to protect libovni process state
Multiple threads may attempt to initialize or finalize the process, so
we keep the state stored in an atomic integer to protect against bad
usage.
2024-09-13 08:35:33 +02:00
ceaac3bcf0 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-09-12 16:27:50 +02:00
d83e8f2d68 Always require the current ovni model 2024-09-12 16:24:01 +02:00
f6d85e9af5 Make ovni.require a mandatory attribute
We no longer accept streams that don't have the ovni.require attribute.
2024-09-12 15:56:24 +02:00
1f30e8ef8b 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-09-12 15:54:29 +02:00
24805f607b Add merge-cpus-loom test
Ensure we can merge the information of CPUs from multiple threads.
2024-09-12 09:09:09 +02:00
94ede68bab Fix spawn-task-external test
It is mandatory to call ovni_thread_free().
2024-09-10 12:49:09 +02:00
8d59161a62 Update tmpdir-metadata test 2024-09-10 12:43:10 +02:00
4e3406d5f8 Move thread streams in ovni_thread_free()
The process metadata in metadata.json is no longer needed.
2024-09-10 12:42:25 +02:00
2bf739efed Reject incomplete thread streams 2024-09-10 11:57:45 +02:00
6a595fff0b Ensure the thread is ready before adding cpus 2024-09-10 11:45:24 +02:00
6a54f19b76 Fix unit tests 2024-09-10 11:21:44 +02:00
3f6ec86890 Store .obs and .json paths in stream struct 2024-09-10 11:20:39 +02:00
8e9cc34e5e Store loom CPUs in thread metadata 2024-09-10 11:00:07 +02:00
1b95fa813b Store process information in thread metadata 2024-09-10 10:30:03 +02:00
aafaf6e954 Load thread tid from metadata 2024-09-10 09:59:22 +02:00
4ec966cb67 Store loom name in metadata instead of path 2024-09-10 09:59:22 +02:00
3751f3ac64 Store ovni.part in stream metadata
Allows multiple types of streams for different system parts: thread,
process, cpu, node...
2024-09-10 09:59:22 +02:00
f31e73003f Store stream metadata in stream.json
Place all stream files in its own stream directory.
2024-09-10 09:59:22 +02:00
add2c5638a Add more path utility functions 2024-09-10 09:59:22 +02:00
eceec52194 Store TID and PID in thread metadata 2024-09-10 09:59:22 +02:00
492d6fa290 Increase version metadata to 3 2024-09-10 09:59:22 +02:00