Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
5 months agoAnother attempt at fixing the Flag2 job of jenkins
Martin Quinson [Thu, 16 Nov 2023 13:16:03 +0000 (14:16 +0100)]
Another attempt at fixing the Flag2 job of jenkins

5 months agoJenkins::Flag2: use ninja if avail; verbose builds
Martin Quinson [Thu, 16 Nov 2023 08:49:36 +0000 (09:49 +0100)]
Jenkins::Flag2: use ninja if avail; verbose builds

5 months agoGive a way to add binaries to the list that shouldn't be messed with by sthread
Martin Quinson [Wed, 15 Nov 2023 23:17:48 +0000 (00:17 +0100)]
Give a way to add binaries to the list that shouldn't be messed with by sthread

5 months agostop being a stupidly rushing boar (hopefuly)
Martin Quinson [Wed, 15 Nov 2023 22:08:33 +0000 (23:08 +0100)]
stop being a stupidly rushing boar (hopefuly)

5 months agoProperly pass the LD_PRELOAD as a setenv command in tesh file + show the ignored...
Martin Quinson [Wed, 15 Nov 2023 21:46:21 +0000 (22:46 +0100)]
Properly pass the LD_PRELOAD as a setenv command in tesh file + show the ignored output in comments

5 months agotesh: allow variable substitutions in setenv cmds, and more robust to invalid numeric...
Martin Quinson [Wed, 15 Nov 2023 21:45:20 +0000 (22:45 +0100)]
tesh: allow variable substitutions in setenv cmds, and more robust to invalid numerical values

5 months agoRework the doc of model-check/replay, and add an example with sthread
Martin Quinson [Wed, 15 Nov 2023 21:13:25 +0000 (22:13 +0100)]
Rework the doc of model-check/replay, and add an example with sthread

5 months agocut the backtrace displayed from sthread to the sthread_create to hide useless cruft
Martin Quinson [Wed, 15 Nov 2023 21:12:41 +0000 (22:12 +0100)]
cut the backtrace displayed from sthread to the sthread_create to hide useless cruft

5 months agoVarious doc improvements
Martin Quinson [Wed, 15 Nov 2023 15:57:53 +0000 (16:57 +0100)]
Various doc improvements

5 months agoFix Host::execute to use *this as a host location, not the this_actor->get_host()
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()

5 months agotypo
Martin Quinson [Wed, 15 Nov 2023 15:31:19 +0000 (16:31 +0100)]
typo

5 months agoMerge branch 'battery-get-name' into 'master'
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

5 months agoadd get_name for batteries. update dag_from_json to support wfformat 1.4
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

5 months agoDraft a release
Martin Quinson [Wed, 15 Nov 2023 00:25:16 +0000 (01:25 +0100)]
Draft a release

5 months agoFix an ODR reported by ASan
Martin Quinson [Tue, 14 Nov 2023 19:48:40 +0000 (20:48 +0100)]
Fix an ODR reported by ASan

5 months agoHave create_jbod() return a JbodPtr instead of Jbod* to avoid memleaks
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

5 months agoGive a way to C users to not leak activities in activityset
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

5 months agoTry to fix a compiler error seen on Flag2 job of jenkins
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

5 months agoMC: move the reversible_race logic to the Transition class
Martin Quinson [Mon, 13 Nov 2023 22:54:15 +0000 (23:54 +0100)]
MC: move the reversible_race logic to the Transition class

5 months agosimplify the way Jbods are defined
Fred Suter [Mon, 13 Nov 2023 22:38:15 +0000 (15:38 -0700)]
simplify the way Jbods are defined

5 months agoanother try at cleanly unlocking the mutexes before destroying them in SMPI::RMA
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

5 months agoTry to fix a failure about mutex freed too early in 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

5 months agoFix clang builds
Martin Quinson [Mon, 13 Nov 2023 20:27:04 +0000 (21:27 +0100)]
Fix clang builds

5 months agoNew method: MutexImpl::is_granted()
Martin Quinson [Mon, 13 Nov 2023 15:05:21 +0000 (16:05 +0100)]
New method: MutexImpl::is_granted()

5 months agoMore forward declarations
Martin Quinson [Mon, 13 Nov 2023 15:04:24 +0000 (16:04 +0100)]
More forward declarations

5 months agoSanity check that mutex are empty when destroyed
Martin Quinson [Mon, 13 Nov 2023 00:10:41 +0000 (01:10 +0100)]
Sanity check that mutex are empty when destroyed

5 months agoCheck in the right location that a mutex is provided to cond_wait
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

5 months agoRename the CondVar observer as it should
Martin Quinson [Sun, 12 Nov 2023 23:23:14 +0000 (00:23 +0100)]
Rename the CondVar observer as it should

5 months agoMove the conditionVariable observer to the right file
Martin Quinson [Sun, 12 Nov 2023 22:46:31 +0000 (23:46 +0100)]
Move the conditionVariable observer to the right file

5 months agoSanity checks about the lock protecting a pthread_cond
Martin Quinson [Sun, 12 Nov 2023 22:32:55 +0000 (23:32 +0100)]
Sanity checks about the lock protecting a pthread_cond

5 months agoNew function s4u::Mutex::get_owner()
Martin Quinson [Sun, 12 Nov 2023 22:30:43 +0000 (23:30 +0100)]
New function s4u::Mutex::get_owner()

5 months agoTemplate implem of cond_timedwait in sthread
Martin Quinson [Sun, 12 Nov 2023 20:49:02 +0000 (21:49 +0100)]
Template implem of cond_timedwait in sthread

5 months agoAnother easy test from McMini
Martin Quinson [Sun, 12 Nov 2023 20:38:09 +0000 (21:38 +0100)]
Another easy test from McMini

5 months agohopefully bigdft CI (work around an issue we identified, pending a fix)
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)

5 months agoImplement pthread_cond in sthread -- too bad it's TODO in MC
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.

5 months agoDocument all changes so far
Martin Quinson [Sun, 12 Nov 2023 19:54:43 +0000 (20:54 +0100)]
Document all changes so far

5 months agoImplement pthread_barrier calls in sthread, and test them in McMini
Martin Quinson [Sun, 12 Nov 2023 19:33:45 +0000 (20:33 +0100)]
Implement pthread_barrier calls in sthread, and test them in McMini

5 months agoRefactorize the sthread interception of functions
Martin Quinson [Sun, 12 Nov 2023 18:04:44 +0000 (19:04 +0100)]
Refactorize the sthread interception of functions

5 months agoAdd more Mc Mini tests
Martin Quinson [Sun, 12 Nov 2023 17:38:33 +0000 (18:38 +0100)]
Add more Mc Mini tests

5 months agoRevalidate the tesh files that got invalidated by a borken printf
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

5 months agoSmall typos in comments
Martin Quinson [Sun, 12 Nov 2023 14:03:26 +0000 (15:03 +0100)]
Small typos in comments

5 months agoMerge branch 'master' of framagit.org:simgrid/simgrid
Martin Quinson [Sun, 12 Nov 2023 14:01:06 +0000 (15:01 +0100)]
Merge branch 'master' of framagit.org:simgrid/simgrid

5 months agoFix tesh autotests after recent change to display the command ASAP
Martin Quinson [Sun, 12 Nov 2023 14:00:51 +0000 (15:00 +0100)]
Fix tesh autotests after recent change to display the command ASAP

5 months agoUpdate .mailmap.
Arnaud Giersch [Fri, 10 Nov 2023 14:54:31 +0000 (15:54 +0100)]
Update .mailmap.

[ci-skip]

5 months agoAdd debug info for reversible race construction
mlaurent [Fri, 10 Nov 2023 18:01:45 +0000 (19:01 +0100)]
Add debug info for reversible race construction

5 months agoFix tesh with new dependencies on Mutex
mlaurent [Thu, 9 Nov 2023 11:22:05 +0000 (12:22 +0100)]
Fix tesh with new dependencies on Mutex

5 months agoRaffine reversible race calculation for MutexWait
mlaurent [Thu, 9 Nov 2023 11:18:06 +0000 (12:18 +0100)]
Raffine reversible race calculation for MutexWait

5 months agoAdd a missing independence theorem about Mutex
mlaurent [Thu, 9 Nov 2023 11:17:28 +0000 (12:17 +0100)]
Add a missing independence theorem about Mutex

5 months agoCleanup work to make is_race_reversible() a method of Transition
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.

5 months agoFix some tesh after changing dependence relation about Semaphore
mlaurent [Thu, 9 Nov 2023 10:28:36 +0000 (11:28 +0100)]
Fix some tesh after changing dependence relation about Semaphore

5 months agoSuppressed a bit too much of codes
mlaurent [Thu, 9 Nov 2023 10:20:10 +0000 (11:20 +0100)]
Suppressed a bit too much of codes

5 months agoClang format over some mc files
mlaurent [Thu, 9 Nov 2023 09:40:50 +0000 (10:40 +0100)]
Clang format over some mc files

5 months agoMerge branch 'master' of https://framagit.org/simgrid/simgrid
mlaurent [Thu, 9 Nov 2023 09:34:39 +0000 (10:34 +0100)]
Merge branch 'master' of https://framagit.org/simgrid/simgrid

5 months agoDiscard the wakeup tree when ODPOR reaches a disabled transition
mlaurent [Thu, 9 Nov 2023 09:26:22 +0000 (10:26 +0100)]
Discard the wakeup tree when ODPOR reaches a disabled transition

5 months agotesh: display the run command ASAP, not after its timeout
Martin Quinson [Wed, 8 Nov 2023 23:08:16 +0000 (00:08 +0100)]
tesh: display the run command ASAP, not after its timeout

5 months agoFix the tesh files now that the ODPOR algo was changed a bit
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

5 months agoSpit a message when ODPOR is not optimal
Martin Quinson [Wed, 8 Nov 2023 23:01:46 +0000 (00:01 +0100)]
Spit a message when ODPOR is not optimal

5 months agoRedondant line in insertion
mlaurent [Wed, 8 Nov 2023 18:05:17 +0000 (19:05 +0100)]
Redondant line in insertion

5 months agoMerge branch 'master' of https://framagit.org/simgrid/simgrid
mlaurent [Wed, 8 Nov 2023 17:56:03 +0000 (18:56 +0100)]
Merge branch 'master' of https://framagit.org/simgrid/simgrid

5 months agoFix ODPOR: overapproximate ReversibleRace (to not miss branches) and survive overapprox
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 :)

5 months agoMerge branch 'master' of https://framagit.org/simgrid/simgrid
mlaurent [Wed, 8 Nov 2023 10:26:51 +0000 (11:26 +0100)]
Merge branch 'master' of https://framagit.org/simgrid/simgrid

5 months agoAdd debug log for ODPOR + required explaining comments
mlaurent [Wed, 8 Nov 2023 10:25:32 +0000 (11:25 +0100)]
Add debug log for ODPOR + required explaining comments

5 months agoFix SemWai::ReversibleRace()
Martin Quinson [Wed, 8 Nov 2023 09:24:14 +0000 (10:24 +0100)]
Fix SemWai::ReversibleRace()

6 months agoSimply rewrap comments and reindent, no real change
Martin Quinson [Tue, 7 Nov 2023 22:58:43 +0000 (23:58 +0100)]
Simply rewrap comments and reindent, no real change

6 months agoAdd an assert that the checker don't try to exec disabled transitions
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 :)

6 months agoImprove the debug messages
Martin Quinson [Tue, 7 Nov 2023 22:16:42 +0000 (23:16 +0100)]
Improve the debug messages

6 months agoTell the MC transition about the semaphore capacity and use it
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

6 months agoMake sure that the ID of a semaphore does not change over time
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

6 months agocosmetics: this is an ID, not a ptr
Martin Quinson [Tue, 7 Nov 2023 15:58:04 +0000 (16:58 +0100)]
cosmetics: this is an ID, not a ptr

6 months agoTry to help gcovr with option --gcov-ignore-errors.
Arnaud Giersch [Tue, 7 Nov 2023 15:03:32 +0000 (16:03 +0100)]
Try to help gcovr with option --gcov-ignore-errors.

[ci-skip]

6 months agoMerge branch 'master' of https://framagit.org/simgrid/simgrid
mlaurent [Tue, 7 Nov 2023 12:20:10 +0000 (13:20 +0100)]
Merge branch 'master' of https://framagit.org/simgrid/simgrid

6 months agoAdd some debug info
mlaurent [Tue, 7 Nov 2023 12:15:50 +0000 (13:15 +0100)]
Add some debug info

6 months agoUse standard __func__ instead of __FUNCTION__.
Arnaud Giersch [Tue, 7 Nov 2023 09:23:31 +0000 (10:23 +0100)]
Use standard __func__ instead of __FUNCTION__.

6 months agoalso remove xbt/automaton which was only useful to stateful MC
Martin Quinson [Mon, 6 Nov 2023 18:43:40 +0000 (19:43 +0100)]
also remove xbt/automaton which was only useful to stateful MC

6 months agoChange most mcmini tests to odpor reduction; the unchanged one fails to find the...
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...

6 months agoActions executed by the same actor are always dependent, damnit
Martin Quinson [Mon, 6 Nov 2023 16:59:26 +0000 (17:59 +0100)]
Actions executed by the same actor are always dependent, damnit

6 months agoODPOR: more verbose message on assertion failure
Martin Quinson [Mon, 6 Nov 2023 16:59:12 +0000 (17:59 +0100)]
ODPOR: more verbose message on assertion failure

6 months agoThis option is used in MC, so it won't go anytime soon
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

6 months agoTroubleshooting Homebrew binaries on macOS (Thanks Paul Adam)
Martin Quinson [Mon, 6 Nov 2023 09:59:36 +0000 (10:59 +0100)]
Troubleshooting Homebrew binaries on macOS (Thanks Paul Adam)

6 months agoAnother attempt to fix the printf issue on mac: don't use uint64 :)
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 :)

6 months agoThere is too much boost include to protect, disable -Wundef on FreeBSD alltogether
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

6 months agoAvoid casting errors in printf on MacOSX
Martin Quinson [Sun, 5 Nov 2023 16:21:28 +0000 (17:21 +0100)]
Avoid casting errors in printf on MacOSX

6 months ago was for stateful MC, remove this
Martin Quinson [Sun, 5 Nov 2023 16:11:07 +0000 (17:11 +0100)]
 was for stateful MC, remove this

6 months agoFix gcc builds
Martin Quinson [Sun, 5 Nov 2023 16:10:42 +0000 (17:10 +0100)]
Fix gcc builds

6 months agoTry to survive to undefined preprocessor symbols
Martin Quinson [Sun, 5 Nov 2023 15:56:46 +0000 (16:56 +0100)]
Try to survive to undefined preprocessor symbols

6 months agoTry to activate -Wundef on all builds
Martin Quinson [Sun, 5 Nov 2023 15:31:46 +0000 (16:31 +0100)]
Try to activate -Wundef on all builds

6 months agoModel-checking is robust now that it's stateless MC only -- remove precautionous...
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

6 months agoRestaure INCLUDE(CheckCCompilerFlag) in cmake
Martin Quinson [Sun, 5 Nov 2023 12:28:20 +0000 (13:28 +0100)]
Restaure INCLUDE(CheckCCompilerFlag) in cmake

It was actually used, my bad.

6 months agounify struct and class declarations
Martin Quinson [Sun, 5 Nov 2023 08:49:29 +0000 (09:49 +0100)]
unify struct and class declarations

6 months agoRemove some restrictions on enable_model-checking now that it's only for the stateless MC
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

6 months agoRemove the stateful model-checking from the archive. It's not working anymore
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.

6 months agoMerge branch 'master' of framagit.org:simgrid/simgrid
Martin Quinson [Sun, 5 Nov 2023 00:14:58 +0000 (01:14 +0100)]
Merge branch 'master' of framagit.org:simgrid/simgrid

6 months agoAdd a cmake option to disable McMini tests, and rename some existing ones
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.

6 months agoDocument all commits of this release cycle so far
Martin Quinson [Sat, 4 Nov 2023 23:34:52 +0000 (00:34 +0100)]
Document all commits of this release cycle so far

6 months agoIgnore McMini tests from sonar analysis
Martin Quinson [Sat, 4 Nov 2023 22:40:45 +0000 (23:40 +0100)]
Ignore McMini tests from sonar analysis

6 months agoadd some new MPI4 unsupported partitioned communication functions. May not be hard...
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

6 months agoMerge branch 'master' into simgrid-fork-changelog-plugins
Martin Quinson [Fri, 3 Nov 2023 16:55:49 +0000 (17:55 +0100)]
Merge branch 'master' into simgrid-fork-changelog-plugins

6 months agoFix an ODR reported by ASan
Martin Quinson [Fri, 3 Nov 2023 12:57:31 +0000 (13:57 +0100)]
Fix an ODR reported by ASan

6 months agoMerge branch 'memleak-battery' into 'master'
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

6 months agofix memleak in battery examples and task-storm
Adrien Gougeon [Fri, 3 Nov 2023 13:30:56 +0000 (14:30 +0100)]
fix memleak in battery examples and task-storm