Commit Graph

956 Commits

Author SHA1 Message Date
e95362f461 Fix time scale in flush config 2022-01-12 17:11:56 +01:00
544c67330c Allow a temporal directory to flush the buffers
The directory can be specified using the OVNI_TMPDIR environment
variable.
2022-01-12 16:57:52 +01:00
66036fe59e Add tracing documentation 2022-01-12 16:56:36 +01:00
1d3dc235dc Sync the stream with fdatasync() 2022-01-12 11:05:38 +01:00
df72ab79ac Remove verbose details from ovnisort 2022-01-12 11:05:38 +01:00
500051305c State if the trace sorted with ovnisort -c 2022-01-12 11:05:38 +01:00
26ff310287 Use pwrite() to modify the streams
Using MAP_SHARED and mmap() causes coherence problems on shared
filesystems such as GPFS.

See https://pm.bsc.es/gitlab/rarias/ovni/-/issues/28 for more
details.
2022-01-12 11:05:38 +01:00
12d35b1d46 Use a private mmap buffer for streams 2022-01-12 11:05:38 +01:00
676576f347 Simplify dump format 2022-01-12 11:05:38 +01:00
1aae200614 Use pointers instead of indexes in streams 2022-01-12 11:05:38 +01:00
568cbb2622 Free trace structures in ovnisort 2022-01-12 11:05:38 +01:00
5e39c55231 Unmap stream buffer in ovni_free_streams() 2022-01-12 11:05:38 +01:00
bb14becb75 Fix hexdump for non-printable characters 2022-01-12 11:05:38 +01:00
ba18ada0ae Only dump the first unsorted region 2022-01-12 11:05:38 +01:00
d6c558118d Sync stream buffer after sort 2022-01-12 11:05:38 +01:00
86eabb2b9d Hexdump sort window for debug 2022-01-12 11:05:38 +01:00
08b22bf6e8 Clear the sort plan 2022-01-12 11:05:38 +01:00
806e0c9198 Allow TID filter in ovnidump 2022-01-12 11:05:38 +01:00
1eb90de88b Fix out of bounds bug in ovnisort 2022-01-12 11:05:38 +01:00
363562e028 Use old cmake 3.10 command line style 2022-01-12 10:54:35 +01:00
86fb8b4717 Fix copyright years 2022-01-12 10:47:47 +01:00
add5872c9a Split glib and version check 2022-01-12 10:29:22 +01:00
39b65b1e67 Define gettid for old glibc versions 2022-01-12 10:29:13 +01:00
3dc03ee5d7 Verbose build and check phases 2022-01-11 18:56:37 +01:00
66f53665dc Enable checks in the ovni derivation 2022-01-11 18:56:37 +01:00
e435d2d004 Run the tests in serial 2022-01-11 18:56:37 +01:00
292dda835a Add gitlab CI with old glibc 2022-01-11 17:51:47 +01:00
842d60043b Add a nix shell with glibc 2.26 2022-01-11 17:51:47 +01:00
bae6e4a209 Add rank test with fake nosv tasks 2021-12-10 18:37:32 +01:00
1b1ca7e232 Add rank support in metadata 2021-12-10 18:37:14 +01:00
6c35d632f2 Add test with multiple processes 2021-12-10 18:29:38 +01:00
Antoni Navarro
4719917ba9 Change Nanos6's name to NODES 2021-12-10 14:54:34 +00:00
d6c16bdb24 Add .gitlab-ci.yml file 2021-12-10 13:14:29 +01:00
19c535ef02 Poison assert() 2021-12-09 16:56:24 +01:00
f705d707b6 Remove asserts from utlist.h 2021-12-09 16:55:42 +01:00
df968eb4d0 Remove asserts in heap.h 2021-12-09 16:50:18 +01:00
6b9e083225 Fix typo 2021-12-09 16:43:07 +01:00
24a6ce2f2c Fix error reporting in ovnisort 2021-12-09 16:42:47 +01:00
f8d989b214 Add extra checks when running a new task in nosv 2021-12-09 16:08:45 +01:00
de70a057d4 Use signed integers for CPU ids 2021-12-09 16:08:45 +01:00
75c32f3a99 Transform all aserts into unconditional checks 2021-12-09 16:08:36 +01:00
2046833700 Improve error handling in libovni
- Transform asserts into unconditional checks
- Abort as soon as an error is encountered
- Remove return errors
2021-12-09 14:18:33 +01:00
2ffd8407e0 Remove unneeded files from gitignore 2021-12-09 14:17:02 +01:00
9d32031552 Include the tests after loading MPI 2021-12-09 14:17:02 +01:00
4dc3b6116e Add UBsan build type 2021-12-09 14:17:02 +01:00
e8860a5f99 Inform of failed function in perror() 2021-12-09 14:11:57 +01:00
ca9bbf6401 Close file descriptors after mmap
Now is no longer needed to increase the limit of the maximum number of
file descriptors opened when loading large traces.
2021-12-07 14:23:52 +01:00
50081b0dc0 Allow empty unsorted regions
Additionally, the check mode (-c) ensures that a trace has been properly
sorted.
2021-12-02 10:37:53 +01:00
e1c433a1e7 Add kernel events documentation 2021-12-02 10:37:53 +01: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