Martin Quinson [Wed, 15 Nov 2023 15:57:53 +0000 (16:57 +0100)]
Various doc improvements
Martin Quinson [Wed, 15 Nov 2023 15:33:20 +0000 (16:33 +0100)]
Fix Host::execute to use *this as a host location, not the this_actor->get_host()
Martin Quinson [Wed, 15 Nov 2023 15:31:19 +0000 (16:31 +0100)]
typo
Martin Quinson [Wed, 15 Nov 2023 15:54:05 +0000 (15:54 +0000)]
Merge branch 'battery-get-name' into 'master'
add get_name for batteries. update dag_from_json to support wfformat 1.4
See merge request simgrid/simgrid!179
Adrien Gougeon [Wed, 15 Nov 2023 15:12:19 +0000 (16:12 +0100)]
add get_name for batteries. update dag_from_json to support wfformat 1.4
Martin Quinson [Wed, 15 Nov 2023 00:25:16 +0000 (01:25 +0100)]
Draft a release
Martin Quinson [Tue, 14 Nov 2023 19:48:40 +0000 (20:48 +0100)]
Fix an ODR reported by ASan
Martin Quinson [Tue, 14 Nov 2023 19:39:23 +0000 (20:39 +0100)]
Have create_jbod() return a JbodPtr instead of Jbod* to avoid memleaks
Martin Quinson [Tue, 14 Nov 2023 16:16:22 +0000 (17:16 +0100)]
Give a way to C users to not leak activities in activityset
Martin Quinson [Tue, 14 Nov 2023 15:47:36 +0000 (16:47 +0100)]
Try to fix a compiler error seen on Flag2 job of jenkins
Martin Quinson [Mon, 13 Nov 2023 22:54:15 +0000 (23:54 +0100)]
MC: move the reversible_race logic to the Transition class
Fred Suter [Mon, 13 Nov 2023 22:38:15 +0000 (15:38 -0700)]
simplify the way Jbods are defined
Martin Quinson [Mon, 13 Nov 2023 21:08:30 +0000 (22:08 +0100)]
another try at cleanly unlocking the mutexes before destroying them in SMPI::RMA
Martin Quinson [Mon, 13 Nov 2023 20:44:26 +0000 (21:44 +0100)]
Try to fix a failure about mutex freed too early in RMA
Martin Quinson [Mon, 13 Nov 2023 20:27:04 +0000 (21:27 +0100)]
Fix clang builds
Martin Quinson [Mon, 13 Nov 2023 15:05:21 +0000 (16:05 +0100)]
New method: MutexImpl::is_granted()
Martin Quinson [Mon, 13 Nov 2023 15:04:24 +0000 (16:04 +0100)]
More forward declarations
Martin Quinson [Mon, 13 Nov 2023 00:10:41 +0000 (01:10 +0100)]
Sanity check that mutex are empty when destroyed
Martin Quinson [Sun, 12 Nov 2023 23:55:37 +0000 (00:55 +0100)]
Check in the right location that a mutex is provided to cond_wait
Martin Quinson [Sun, 12 Nov 2023 23:23:14 +0000 (00:23 +0100)]
Rename the CondVar observer as it should
Martin Quinson [Sun, 12 Nov 2023 22:46:31 +0000 (23:46 +0100)]
Move the conditionVariable observer to the right file
Martin Quinson [Sun, 12 Nov 2023 22:32:55 +0000 (23:32 +0100)]
Sanity checks about the lock protecting a pthread_cond
Martin Quinson [Sun, 12 Nov 2023 22:30:43 +0000 (23:30 +0100)]
New function s4u::Mutex::get_owner()
Martin Quinson [Sun, 12 Nov 2023 20:49:02 +0000 (21:49 +0100)]
Template implem of cond_timedwait in sthread
Martin Quinson [Sun, 12 Nov 2023 20:38:09 +0000 (21:38 +0100)]
Another easy test from McMini
Augustin Degomme [Mon, 13 Nov 2023 13:38:33 +0000 (13:38 +0000)]
hopefully bigdft CI (work around an issue we identified, pending a fix)
Martin Quinson [Sun, 12 Nov 2023 20:30:36 +0000 (21:30 +0100)]
Implement pthread_cond in sthread -- too bad it's TODO in MC
I now have to implement the condition variables in the MC world
(adding the transitions and the dependence theorems), but I first have
to implement the asynchronous version of CV::wait(), as the model
checker can only deal with persistent transitions. That's not a small
assignment, and it will have to wait for tomorrow.
Until then, the pthread_cond support in sthread is somewhat useless.
Martin Quinson [Sun, 12 Nov 2023 19:54:43 +0000 (20:54 +0100)]
Document all changes so far
Martin Quinson [Sun, 12 Nov 2023 19:33:45 +0000 (20:33 +0100)]
Implement pthread_barrier calls in sthread, and test them in McMini
Martin Quinson [Sun, 12 Nov 2023 18:04:44 +0000 (19:04 +0100)]
Refactorize the sthread interception of functions
Martin Quinson [Sun, 12 Nov 2023 17:38:33 +0000 (18:38 +0100)]
Add more Mc Mini tests
Martin Quinson [Sun, 12 Nov 2023 17:18:07 +0000 (18:18 +0100)]
Revalidate the tesh files that got invalidated by a borken printf
Semaphore ID and capacity was inverted
Martin Quinson [Sun, 12 Nov 2023 14:03:26 +0000 (15:03 +0100)]
Small typos in comments
Martin Quinson [Sun, 12 Nov 2023 14:01:06 +0000 (15:01 +0100)]
Merge branch 'master' of framagit.org:simgrid/simgrid
Martin Quinson [Sun, 12 Nov 2023 14:00:51 +0000 (15:00 +0100)]
Fix tesh autotests after recent change to display the command ASAP
Arnaud Giersch [Fri, 10 Nov 2023 14:54:31 +0000 (15:54 +0100)]
Update .mailmap.
[ci-skip]
mlaurent [Fri, 10 Nov 2023 18:01:45 +0000 (19:01 +0100)]
Add debug info for reversible race construction
mlaurent [Thu, 9 Nov 2023 11:22:05 +0000 (12:22 +0100)]
Fix tesh with new dependencies on Mutex
mlaurent [Thu, 9 Nov 2023 11:18:06 +0000 (12:18 +0100)]
Raffine reversible race calculation for MutexWait
mlaurent [Thu, 9 Nov 2023 11:17:28 +0000 (12:17 +0100)]
Add a missing independence theorem about Mutex
Martin Quinson [Thu, 9 Nov 2023 10:53:21 +0000 (11:53 +0100)]
Cleanup work to make is_race_reversible() a method of Transition
That's someone less efficient as we need to retrieve the other's
transition in all cases where most Transition kind can compute the
answer without the other transition, but that should be more readable.
mlaurent [Thu, 9 Nov 2023 10:28:36 +0000 (11:28 +0100)]
Fix some tesh after changing dependence relation about Semaphore
mlaurent [Thu, 9 Nov 2023 10:20:10 +0000 (11:20 +0100)]
Suppressed a bit too much of codes
mlaurent [Thu, 9 Nov 2023 09:40:50 +0000 (10:40 +0100)]
Clang format over some mc files
mlaurent [Thu, 9 Nov 2023 09:34:39 +0000 (10:34 +0100)]
Merge branch 'master' of https://framagit.org/simgrid/simgrid
mlaurent [Thu, 9 Nov 2023 09:26:22 +0000 (10:26 +0100)]
Discard the wakeup tree when ODPOR reaches a disabled transition
Martin Quinson [Wed, 8 Nov 2023 23:08:16 +0000 (00:08 +0100)]
tesh: display the run command ASAP, not after its timeout
Martin Quinson [Wed, 8 Nov 2023 23:02:23 +0000 (00:02 +0100)]
Fix the tesh files now that the ODPOR algo was changed a bit
Martin Quinson [Wed, 8 Nov 2023 23:01:46 +0000 (00:01 +0100)]
Spit a message when ODPOR is not optimal
mlaurent [Wed, 8 Nov 2023 18:05:17 +0000 (19:05 +0100)]
Redondant line in insertion
mlaurent [Wed, 8 Nov 2023 17:56:03 +0000 (18:56 +0100)]
Merge branch 'master' of https://framagit.org/simgrid/simgrid
Martin Quinson [Wed, 8 Nov 2023 15:44:10 +0000 (16:44 +0100)]
Fix ODPOR: overapproximate ReversibleRace (to not miss branches) and survive overapprox
Optimal DPOR just became sub-optimal :)
mlaurent [Wed, 8 Nov 2023 10:26:51 +0000 (11:26 +0100)]
Merge branch 'master' of https://framagit.org/simgrid/simgrid
mlaurent [Wed, 8 Nov 2023 10:25:32 +0000 (11:25 +0100)]
Add debug log for ODPOR + required explaining comments
Martin Quinson [Wed, 8 Nov 2023 09:24:14 +0000 (10:24 +0100)]
Fix SemWai::ReversibleRace()
Martin Quinson [Tue, 7 Nov 2023 22:58:43 +0000 (23:58 +0100)]
Simply rewrap comments and reindent, no real change
Martin Quinson [Tue, 7 Nov 2023 22:25:46 +0000 (23:25 +0100)]
Add an assert that the checker don't try to exec disabled transitions
It's too bad this assert actually fails sometimes with ODPOR :)
Martin Quinson [Tue, 7 Nov 2023 22:16:42 +0000 (23:16 +0100)]
Improve the debug messages
Martin Quinson [Tue, 7 Nov 2023 22:00:42 +0000 (23:00 +0100)]
Tell the MC transition about the semaphore capacity and use it
This info is mandatory to compute the reversible race of SemWait in ODPOR
Martin Quinson [Tue, 7 Nov 2023 21:59:18 +0000 (22:59 +0100)]
Make sure that the ID of a semaphore does not change over time
Martin Quinson [Tue, 7 Nov 2023 15:58:04 +0000 (16:58 +0100)]
cosmetics: this is an ID, not a ptr
Arnaud Giersch [Tue, 7 Nov 2023 15:03:32 +0000 (16:03 +0100)]
Try to help gcovr with option --gcov-ignore-errors.
[ci-skip]
mlaurent [Tue, 7 Nov 2023 12:20:10 +0000 (13:20 +0100)]
Merge branch 'master' of https://framagit.org/simgrid/simgrid
mlaurent [Tue, 7 Nov 2023 12:15:50 +0000 (13:15 +0100)]
Add some debug info
Arnaud Giersch [Tue, 7 Nov 2023 09:23:31 +0000 (10:23 +0100)]
Use standard __func__ instead of __FUNCTION__.
Martin Quinson [Mon, 6 Nov 2023 18:43:40 +0000 (19:43 +0100)]
also remove xbt/automaton which was only useful to stateful MC
Martin Quinson [Mon, 6 Nov 2023 18:34:52 +0000 (19:34 +0100)]
Change most mcmini tests to odpor reduction; the unchanged one fails to find the deadlock with odpor...
Martin Quinson [Mon, 6 Nov 2023 16:59:26 +0000 (17:59 +0100)]
Actions executed by the same actor are always dependent, damnit
Martin Quinson [Mon, 6 Nov 2023 16:59:12 +0000 (17:59 +0100)]
ODPOR: more verbose message on assertion failure
Martin Quinson [Mon, 6 Nov 2023 12:45:03 +0000 (13:45 +0100)]
This option is used in MC, so it won't go anytime soon
Martin Quinson [Mon, 6 Nov 2023 09:59:36 +0000 (10:59 +0100)]
Troubleshooting Homebrew binaries on macOS (Thanks Paul Adam)
Martin Quinson [Sun, 5 Nov 2023 21:58:37 +0000 (22:58 +0100)]
Another attempt to fix the printf issue on mac: don't use uint64 :)
Martin Quinson [Sun, 5 Nov 2023 16:32:11 +0000 (17:32 +0100)]
There is too much boost include to protect, disable -Wundef on FreeBSD alltogether
Martin Quinson [Sun, 5 Nov 2023 16:21:28 +0000 (17:21 +0100)]
Avoid casting errors in printf on MacOSX
Martin Quinson [Sun, 5 Nov 2023 16:11:07 +0000 (17:11 +0100)]
was for stateful MC, remove this
Martin Quinson [Sun, 5 Nov 2023 16:10:42 +0000 (17:10 +0100)]
Fix gcc builds
Martin Quinson [Sun, 5 Nov 2023 15:56:46 +0000 (16:56 +0100)]
Try to survive to undefined preprocessor symbols
Martin Quinson [Sun, 5 Nov 2023 15:31:46 +0000 (16:31 +0100)]
Try to activate -Wundef on all builds
Martin Quinson [Sun, 5 Nov 2023 15:30:34 +0000 (16:30 +0100)]
Model-checking is robust now that it's stateless MC only -- remove precautionous compiler flags
Martin Quinson [Sun, 5 Nov 2023 12:28:20 +0000 (13:28 +0100)]
Restaure INCLUDE(CheckCCompilerFlag) in cmake
It was actually used, my bad.
Martin Quinson [Sun, 5 Nov 2023 08:49:29 +0000 (09:49 +0100)]
unify struct and class declarations
Martin Quinson [Sun, 5 Nov 2023 02:27:48 +0000 (03:27 +0100)]
Remove some restrictions on enable_model-checking now that it's only for the stateless MC
Martin Quinson [Sun, 5 Nov 2023 02:04:45 +0000 (03:04 +0100)]
Remove the stateful model-checking from the archive. It's not working anymore
It's a real pity to remove all this great code, as it was doing very
audacious things, but I need to do so to move forward. This code is
very fragile and badly tested, making it very difficult to build upon.
The next time this is implemented (if any), I guess that a
compiler-approach (e.g. a clang plugin providing a full introspection
over the compiled program) would be more robust than a fully runtime
approach tricking with the debug information to get the info. That's
too difficult and fragile.
Again, I'm deeply sorry I had to remove this code, as it requires me
to admit that I failed to maintain this great code over the years.
But facts are stubborn.
Martin Quinson [Sun, 5 Nov 2023 00:14:58 +0000 (01:14 +0100)]
Merge branch 'master' of framagit.org:simgrid/simgrid
Martin Quinson [Sun, 5 Nov 2023 00:10:37 +0000 (01:10 +0100)]
Add a cmake option to disable McMini tests, and rename some existing ones
Old configurations should be updated seamlessly.
Martin Quinson [Sat, 4 Nov 2023 23:34:52 +0000 (00:34 +0100)]
Document all commits of this release cycle so far
Martin Quinson [Sat, 4 Nov 2023 22:40:45 +0000 (23:40 +0100)]
Ignore McMini tests from sonar analysis
Augustin Degomme [Sat, 4 Nov 2023 09:02:46 +0000 (10:02 +0100)]
add some new MPI4 unsupported partitioned communication functions. May not be hard to implement at some point
Martin Quinson [Fri, 3 Nov 2023 16:55:49 +0000 (17:55 +0100)]
Merge branch 'master' into simgrid-fork-changelog-plugins
Martin Quinson [Fri, 3 Nov 2023 12:57:31 +0000 (13:57 +0100)]
Fix an ODR reported by ASan
Martin Quinson [Fri, 3 Nov 2023 16:48:46 +0000 (16:48 +0000)]
Merge branch 'memleak-battery' into 'master'
Fix memleak in battery examples and task-storm
See merge request simgrid/simgrid!178
Adrien Gougeon [Fri, 3 Nov 2023 13:30:56 +0000 (14:30 +0100)]
fix memleak in battery examples and task-storm
Martin Quinson [Thu, 2 Nov 2023 21:40:14 +0000 (22:40 +0100)]
tesh: helpful message on syntax error
Martin Quinson [Thu, 2 Nov 2023 21:39:19 +0000 (22:39 +0100)]
Add more tests from McMini
Adrien Gougeon [Thu, 2 Nov 2023 17:37:50 +0000 (18:37 +0100)]
missing static keyword
Adrien Gougeon [Thu, 2 Nov 2023 17:08:40 +0000 (18:08 +0100)]
improve chiller example. remove on_power_change signal. add get_time_to_goal_temp
Adrien Gougeon [Thu, 2 Nov 2023 16:54:51 +0000 (17:54 +0100)]
better comments on examples
Adrien Gougeon [Thu, 2 Nov 2023 16:52:13 +0000 (17:52 +0100)]
add comment about chiller/battery plugins. Fix chiller doc not showing
Martin Quinson [Thu, 2 Nov 2023 10:32:59 +0000 (11:32 +0100)]
Remove ignored lines from tesh files, uberbumer
Martin Quinson [Thu, 2 Nov 2023 10:15:09 +0000 (11:15 +0100)]
Fix MC builds
No idea why it wasn't catched by regular builds, but didn't dig either.