Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
2 years agoadd finalizing state for smpi actor:
Augustin Degomme [Sun, 20 Mar 2022 13:01:45 +0000 (14:01 +0100)]
add finalizing state for smpi actor:
if finalization barrier is used, tag is now different, in order not to match against other MPI_Barrier that may be in the MPI code

2 years agoFail loudly when someone tries to use Actor::join() in MC (not implemented)
Martin Quinson [Sun, 20 Mar 2022 00:20:33 +0000 (01:20 +0100)]
Fail loudly when someone tries to use Actor::join() in MC (not implemented)

2 years agoDon't have an extra actor in s4u-synchro-mutex to create the others
Martin Quinson [Sun, 20 Mar 2022 00:12:31 +0000 (01:12 +0100)]
Don't have an extra actor in s4u-synchro-mutex to create the others

In MC, it could happen that the master actor terminates, leaves and
frees the shared memory before the end of the other actors.

2 years agoMC: be more cautionous around MC_process_clock, the actor may not be there in case...
Martin Quinson [Sat, 19 Mar 2022 23:34:14 +0000 (00:34 +0100)]
MC: be more cautionous around MC_process_clock, the actor may not be there in case of bugs

2 years agoCosmetics
Martin Quinson [Sat, 19 Mar 2022 21:34:29 +0000 (22:34 +0100)]
Cosmetics

2 years agoMBI: reduce a bit the amount of supurious warnings in generated code
Martin Quinson [Sat, 19 Mar 2022 20:09:48 +0000 (21:09 +0100)]
MBI: reduce a bit the amount of supurious warnings in generated code

2 years agoMPI Win: add check if we try to delete a locked or opened window.
Augustin Degomme [Sun, 20 Mar 2022 00:13:19 +0000 (01:13 +0100)]
MPI Win: add check if we try to delete a locked or opened window.
todo:
- refcount for wins,
- check if we need a separate counter for open/fence (going negative is hacky)

2 years agoFix gcc builds :(
Martin Quinson [Sat, 19 Mar 2022 19:34:13 +0000 (20:34 +0100)]
Fix gcc builds :(

2 years agomake a single barrier per RMA window and share it through broadcast
Martin Quinson [Sat, 19 Mar 2022 19:25:19 +0000 (20:25 +0100)]
make a single barrier per RMA window and share it through broadcast

2 years agoGive users a way to debug their barriers
Martin Quinson [Sat, 19 Mar 2022 19:12:48 +0000 (20:12 +0100)]
Give users a way to debug their barriers

2 years agouse correct type
Augustin Degomme [Sat, 19 Mar 2022 16:39:20 +0000 (17:39 +0100)]
use correct type

2 years agoSMPI: add check for buffer size in windows creation (thx MBI)
Augustin Degomme [Sat, 19 Mar 2022 16:37:34 +0000 (17:37 +0100)]
SMPI: add check for buffer size in windows creation (thx MBI)

2 years agoFinish to document the BMF options [no-ci]
Martin Quinson [Fri, 18 Mar 2022 22:12:46 +0000 (23:12 +0100)]
Finish to document the BMF options [no-ci]

2 years agoMBI: don't add the path of the generator in the generated codes
Martin Quinson [Fri, 18 Mar 2022 21:45:47 +0000 (22:45 +0100)]
MBI: don't add the path of the generator in the generated codes

2 years agoSpecify actor in the MC traces
Martin Quinson [Fri, 18 Mar 2022 20:23:48 +0000 (21:23 +0100)]
Specify actor in the MC traces

2 years agoFix doc: add bmf/precision
Bruno Donassolo [Fri, 18 Mar 2022 21:26:28 +0000 (22:26 +0100)]
Fix doc: add bmf/precision

2 years agoFix ctest for no Eigen builds
Bruno Donassolo [Fri, 18 Mar 2022 10:27:02 +0000 (11:27 +0100)]
Fix ctest for no Eigen builds

2 years agoRemove bmf host model. Add it as an option.
Bruno Donassolo [Fri, 18 Mar 2022 09:32:06 +0000 (10:32 +0100)]
Remove bmf host model. Add it as an option.

Remove --cfg=host/model:ptask_BMF.
Use --cfg=host/model:ptask_L07 --cfg=host/solver:bmf instead.

More consistent with other models (CPU, disk, etc)

2 years agoBMF: undo weight adding.
Bruno Donassolo [Fri, 18 Mar 2022 09:00:55 +0000 (10:00 +0100)]
BMF: undo weight adding.

It doesn't seem necessary while we're not sure to the semantics gave to
fair_sharing with priorities

2 years agoNetwork: add solver as an option
Bruno Donassolo [Thu, 17 Mar 2022 10:47:24 +0000 (11:47 +0100)]
Network: add solver as an option

Select a test which doesn't use crosstraffic and the timing is the same
for both models (maxmin and bmf)

2 years agoBMF: hopefully fix the fair_sharing with priority
Bruno Donassolo [Thu, 17 Mar 2022 10:44:09 +0000 (11:44 +0100)]
BMF: hopefully fix the fair_sharing with priority

Go back where we were supposed to be 1 week ago

2 years agoDisk: add solver as an option
Bruno Donassolo [Wed, 16 Mar 2022 18:04:40 +0000 (19:04 +0100)]
Disk: add solver as an option

Select one random test which timing should be the same between maxmin
and bmf

2 years agoSystem: methods -3 protected, +3 private
Bruno Donassolo [Wed, 16 Mar 2022 17:53:46 +0000 (18:53 +0100)]
System: methods -3 protected, +3 private

2 years agoFix distcheck
Bruno Donassolo [Wed, 16 Mar 2022 17:42:32 +0000 (18:42 +0100)]
Fix distcheck

2 years agoBMF: remove warning since the solver can be used by any model
Bruno Donassolo [Wed, 16 Mar 2022 17:36:27 +0000 (18:36 +0100)]
BMF: remove warning since the solver can be used by any model

2 years agoBMF: fix cloud-capping tests.
Bruno Donassolo [Wed, 16 Mar 2022 17:21:24 +0000 (18:21 +0100)]
BMF: fix cloud-capping tests.

2 years agoBMF: Fix bug with threads
Bruno Donassolo [Wed, 16 Mar 2022 14:59:25 +0000 (15:59 +0100)]
BMF: Fix bug with threads

Our fair sharing is related to maxA_ not A_

2 years agoAvoid negative rate
Bruno Donassolo [Mon, 14 Mar 2022 14:52:03 +0000 (15:52 +0100)]
Avoid negative rate

Negatives rates doesn't make sense in real life.
In this case, set fair_sharing as if the resource were saturated

2 years agoMove common part for selective_update to System class.
Bruno Donassolo [Wed, 16 Mar 2022 11:15:38 +0000 (12:15 +0100)]
Move common part for selective_update to System class.

And 1 more private variable in System \o/

2 years agoRename update_modified_set to update_modified_cnst_set.
Bruno Donassolo [Wed, 16 Mar 2022 10:10:56 +0000 (11:10 +0100)]
Rename update_modified_set to update_modified_cnst_set.

It's the modified_constraint_set we're updating...
Avoid confusion with modified_set_

2 years agoSystem: fix modified_set_ when selective_update is active
Bruno Donassolo [Wed, 16 Mar 2022 09:30:33 +0000 (10:30 +0100)]
System: fix modified_set_ when selective_update is active

Using update_modified_set only on the first constraint of the variable
is valid only if the variable is active. Otherwise, it can make the
modified_set_ incomplete.

2 years agoMove maxmin solver from system
Bruno Donassolo [Tue, 15 Mar 2022 17:26:02 +0000 (18:26 +0100)]
Move maxmin solver from system

New class for maxmin solver:: lmm::MaxMin.

A tiny step towards better encapsulation, still far from good though.

2 years agoRename file maxmin to System
Bruno Donassolo [Tue, 15 Mar 2022 14:11:01 +0000 (15:11 +0100)]
Rename file maxmin to System

Preparing to move maxmin solver to another subclass

2 years agoSolver as an configuration option for CPU
Bruno Donassolo [Tue, 15 Mar 2022 13:08:48 +0000 (14:08 +0100)]
Solver as an configuration option for CPU

Add cfg to set solver to be used for CPU models
- --cfg=cpu/solver: "maxmin, fairbottleneck or bmf"

Select 1 random test from teshsuite to run with bmf since it should have
the save output as maxmin

2 years agoSuppress trailing whitespaces.
Arnaud Giersch [Thu, 17 Mar 2022 20:44:55 +0000 (21:44 +0100)]
Suppress trailing whitespaces.

[ci-skip]

2 years agocosmetics in doc
Martin Quinson [Thu, 17 Mar 2022 20:36:45 +0000 (21:36 +0100)]
cosmetics in doc

2 years agoMerge branch 'add_semaphore_python_bindings' into 'master'
Martin Quinson [Thu, 17 Mar 2022 20:19:06 +0000 (20:19 +0000)]
Merge branch 'add_semaphore_python_bindings' into 'master'

Add Semaphore Python bindings

See merge request simgrid/simgrid!91

2 years agoA few more sonar smells.
Arnaud Giersch [Thu, 17 Mar 2022 19:25:26 +0000 (20:25 +0100)]
A few more sonar smells.

2 years agoAdd Semaphore Python bindings
Jean-Edouard BOULANGER [Thu, 17 Mar 2022 18:56:48 +0000 (19:56 +0100)]
Add Semaphore Python bindings

2 years ago[sonar] Replace 're.sub' by more efficient 'str.replace'.
Arnaud Giersch [Thu, 17 Mar 2022 17:28:58 +0000 (18:28 +0100)]
[sonar] Replace 're.sub' by more efficient 'str.replace'.

2 years ago[sonar] Use a more specific Python exception.
Arnaud Giersch [Thu, 17 Mar 2022 15:32:22 +0000 (16:32 +0100)]
[sonar] Use a more specific Python exception.

2 years agoPrefer a range-based for loop.
Arnaud Giersch [Thu, 17 Mar 2022 14:26:14 +0000 (15:26 +0100)]
Prefer a range-based for loop.

2 years agoFix mingw warnigns.
Arnaud Giersch [Thu, 17 Mar 2022 10:18:57 +0000 (11:18 +0100)]
Fix mingw warnigns.

2 years agoMerge branch 'dev-profile-leak' into 'master'
Arnaud Giersch [Thu, 17 Mar 2022 08:13:49 +0000 (08:13 +0000)]
Merge branch 'dev-profile-leak' into 'master'

Fix leak when given an empty profile

See merge request simgrid/simgrid!88

2 years agoFix leak when given an empty profile
Fabien Chaix [Thu, 17 Mar 2022 07:51:15 +0000 (09:51 +0200)]
Fix leak when given an empty profile

2 years agodoc: Fix some formatting issues
Martin Quinson [Thu, 17 Mar 2022 00:25:00 +0000 (01:25 +0100)]
doc: Fix some formatting issues

2 years agoRelease notes: shorten a bit, reindent, and reformat properly
Martin Quinson [Thu, 17 Mar 2022 00:23:34 +0000 (01:23 +0100)]
Release notes: shorten a bit, reindent, and reformat properly

2 years agoBegin to prepare the next release
Martin Quinson [Wed, 16 Mar 2022 22:40:47 +0000 (23:40 +0100)]
Begin to prepare the next release

2 years agoFix spurious compilation warning.
Arnaud Giersch [Wed, 16 Mar 2022 22:36:27 +0000 (23:36 +0100)]
Fix spurious compilation warning.

warning: ‘main’ may be used uninitialized in this function.

2 years agoDisallow direct contruction/destruction of s4u::File.
Arnaud Giersch [Wed, 16 Mar 2022 21:37:22 +0000 (22:37 +0100)]
Disallow direct contruction/destruction of s4u::File.

Use s4u::File::open() and s4u::File::close() instead.

2 years agoMove simcall out of s4u::File destructor.
Arnaud Giersch [Wed, 16 Mar 2022 21:09:48 +0000 (22:09 +0100)]
Move simcall out of s4u::File destructor.

Please Sonar by not throwing uncaught exceptions in a destructor.

2 years agoUse s4u::File::open/close inside s4u::File too.
Arnaud Giersch [Wed, 16 Mar 2022 22:06:28 +0000 (23:06 +0100)]
Use s4u::File::open/close inside s4u::File too.

2 years agoProvide File::open with 3 arguments.
Arnaud Giersch [Wed, 16 Mar 2022 22:04:43 +0000 (23:04 +0100)]
Provide File::open with 3 arguments.

2 years agoMake example s4u-replay-io use s4u::File::open/close.
Arnaud Giersch [Wed, 16 Mar 2022 21:35:47 +0000 (22:35 +0100)]
Make example s4u-replay-io use s4u::File::open/close.

2 years agoMake example storage_client_server use s4u::File::open/close.
Arnaud Giersch [Wed, 16 Mar 2022 21:16:26 +0000 (22:16 +0100)]
Make example storage_client_server use s4u::File::open/close.

2 years agoPolymorphic base class destructor should be either public virtual or protected non...
Arnaud Giersch [Wed, 16 Mar 2022 20:37:55 +0000 (21:37 +0100)]
Polymorphic base class destructor should be either public virtual or protected non-virtual.

This is Sonar rule S1235
https://sonarcloud.io/organizations/simgrid/rules?open=cpp%3AS1235&rule_key=cpp%3AS1235

Some of the classes are simply marked "final" so that they can never become a
polymorphic base class.

2 years agoFix shadowing declarations in Parmap too.
Arnaud Giersch [Wed, 16 Mar 2022 17:22:05 +0000 (18:22 +0100)]
Fix shadowing declarations in Parmap too.

2 years agoRename variables to avoid shadowing outer declarations.
Arnaud Giersch [Wed, 16 Mar 2022 16:39:52 +0000 (17:39 +0100)]
Rename variables to avoid shadowing outer declarations.

2 years agoInitialize all fields.
Arnaud Giersch [Wed, 16 Mar 2022 15:14:34 +0000 (16:14 +0100)]
Initialize all fields.

2 years agoFix misc sonar issues.
Arnaud Giersch [Wed, 16 Mar 2022 10:18:23 +0000 (11:18 +0100)]
Fix misc sonar issues.

2 years agoKill dead code.
Arnaud Giersch [Wed, 16 Mar 2022 10:15:45 +0000 (11:15 +0100)]
Kill dead code.

2 years agoStatic storage duration for config flags.
Arnaud Giersch [Wed, 16 Mar 2022 14:57:53 +0000 (15:57 +0100)]
Static storage duration for config flags.

2 years agoActivate test python-synchro-barrier.
Arnaud Giersch [Wed, 16 Mar 2022 14:32:28 +0000 (15:32 +0100)]
Activate test python-synchro-barrier.

2 years agotake 2 on declare_flag, not sure it's better... a bit weird
SUTER Frederic [Tue, 15 Mar 2022 22:24:36 +0000 (23:24 +0100)]
take 2 on declare_flag, not sure it's better... a bit weird

2 years agoFix makedistcheck after !87
Martin Quinson [Wed, 16 Mar 2022 11:12:32 +0000 (12:12 +0100)]
Fix makedistcheck after !87

2 years agoDirectly reset observer_ instead of using an empty simcall for that.
Arnaud Giersch [Wed, 16 Mar 2022 09:45:54 +0000 (10:45 +0100)]
Directly reset observer_ instead of using an empty simcall for that.

2 years agoSimcalls are not allowed on exit, even when cheating with raii.
Arnaud Giersch [Wed, 16 Mar 2022 09:38:42 +0000 (10:38 +0100)]
Simcalls are not allowed on exit, even when cheating with raii.

This partially reverts commit 26f93d36882a4af53d1b797294caeae9efbf9b47
"Use RAII to simplify the release of semaphores on exit."

2 years agoMerge branch 'add_barrier_python_bindings' into 'master'
Martin Quinson [Wed, 16 Mar 2022 07:57:12 +0000 (07:57 +0000)]
Merge branch 'add_barrier_python_bindings' into 'master'

Add Barrier Python bindings

See merge request simgrid/simgrid!87

2 years agoRegroup common code.
Arnaud Giersch [Tue, 15 Mar 2022 22:17:31 +0000 (23:17 +0100)]
Regroup common code.

2 years agoExtract eigen3 version from build logs.
Arnaud Giersch [Tue, 15 Mar 2022 20:30:17 +0000 (21:30 +0100)]
Extract eigen3 version from build logs.

2 years agoUse the right comparison operator for version numbers.
Arnaud Giersch [Tue, 15 Mar 2022 20:16:12 +0000 (21:16 +0100)]
Use the right comparison operator for version numbers.

2 years agoAdd missing license
Jean-Edouard BOULANGER [Tue, 15 Mar 2022 20:30:33 +0000 (21:30 +0100)]
Add missing license

2 years agoAdd Barrier Python bindings
Jean-Edouard BOULANGER [Tue, 15 Mar 2022 18:35:47 +0000 (19:35 +0100)]
Add Barrier Python bindings

2 years agoUpdated Release notes wit text from Arnaud, with a round of minor
Henri Casanova [Tue, 15 Mar 2022 18:15:51 +0000 (08:15 -1000)]
Updated Release notes wit text from Arnaud, with a round of minor
rewriting and typo chasing

2 years agoFix column numbers for sortTable.
Arnaud Giersch [Tue, 15 Mar 2022 16:20:17 +0000 (17:20 +0100)]
Fix column numbers for sortTable.

2 years agoUse existing helper function.
Arnaud Giersch [Tue, 15 Mar 2022 14:07:16 +0000 (15:07 +0100)]
Use existing helper function.

2 years agoDraft a few paragraphs in release notes about modeling efforts [no-ci]
Martin Quinson [Tue, 15 Mar 2022 14:35:56 +0000 (15:35 +0100)]
Draft a few paragraphs in release notes about modeling efforts [no-ci]

2 years agoBetter fix for the mutex IDs modifications in mutex-MC test
Martin Quinson [Tue, 15 Mar 2022 13:04:29 +0000 (14:04 +0100)]
Better fix for the mutex IDs modifications in mutex-MC test

kill the extra mutex forgotten out of the loop in the hijacked example

This reverts and reworks commit 5190c1c45270085777ef904c35ab99b5ad52d681.

2 years ago[project-description] Put build status starting at 3rd column.
Arnaud Giersch [Tue, 15 Mar 2022 13:41:08 +0000 (14:41 +0100)]
[project-description] Put build status starting at 3rd column.

[ci-skip]

2 years agoAdd eigen3 to project_description.sh
Arnaud Giersch [Tue, 15 Mar 2022 12:59:34 +0000 (13:59 +0100)]
Add eigen3 to project_description.sh

2 years agoDisable debug output by default.
Arnaud Giersch [Tue, 15 Mar 2022 11:07:51 +0000 (12:07 +0100)]
Disable debug output by default.

2 years agoEnable valgrind for unit-tests.
Arnaud Giersch [Tue, 15 Mar 2022 11:05:25 +0000 (12:05 +0100)]
Enable valgrind for unit-tests.

2 years agoRename TESH_WRAPPER -> VALGRIND_WRAPPER.
Arnaud Giersch [Tue, 15 Mar 2022 11:02:08 +0000 (12:02 +0100)]
Rename TESH_WRAPPER -> VALGRIND_WRAPPER.

2 years agoWhitespace cleanup and reindent.
Arnaud Giersch [Tue, 15 Mar 2022 10:44:29 +0000 (11:44 +0100)]
Whitespace cleanup and reindent.

2 years agoUnnecessary semicolon.
Arnaud Giersch [Tue, 15 Mar 2022 10:38:54 +0000 (11:38 +0100)]
Unnecessary semicolon.

2 years agoRevalidate the tesh output of mutex-MC. The mutex IDs were changed for the same traces
Martin Quinson [Tue, 15 Mar 2022 11:33:14 +0000 (12:33 +0100)]
Revalidate the tesh output of mutex-MC. The mutex IDs were changed for the same traces

2 years agoMake the Eigen3 dependency optionnal
Martin Quinson [Tue, 15 Mar 2022 09:18:51 +0000 (10:18 +0100)]
Make the Eigen3 dependency optionnal

2 years agoDon't feed ICC with command-line parameters that it doesn't understand
Martin Quinson [Tue, 15 Mar 2022 08:17:47 +0000 (09:17 +0100)]
Don't feed ICC with command-line parameters that it doesn't understand

2 years agoMerge branch 'add_mutex_python_bindings' into 'master'
Martin Quinson [Tue, 15 Mar 2022 08:09:00 +0000 (08:09 +0000)]
Merge branch 'add_mutex_python_bindings' into 'master'

Add Mutex Python bindings

See merge request simgrid/simgrid!84

2 years agoUpdate synchro-mutex.py to match last version of s4u-synchro-mutex.cpp
Jean-Edouard BOULANGER [Tue, 15 Mar 2022 07:58:24 +0000 (08:58 +0100)]
Update synchro-mutex.py to match last version of s4u-synchro-mutex.cpp

2 years agoMake synchro-mutex.py in line with s4u-synchro-mutex.cpp
Jean-Edouard BOULANGER [Mon, 14 Mar 2022 18:01:12 +0000 (19:01 +0100)]
Make synchro-mutex.py in line with s4u-synchro-mutex.cpp

2 years agoMartin's suggestions
Jean-Edouard BOULANGER [Mon, 14 Mar 2022 17:51:20 +0000 (18:51 +0100)]
Martin's suggestions

2 years agoAdd Mutex Python bindings
Jean-Edouard BOULANGER [Mon, 14 Mar 2022 17:30:23 +0000 (18:30 +0100)]
Add Mutex Python bindings

2 years ago[config] some declare_flag to Flag
SUTER Frederic [Tue, 15 Mar 2022 03:25:05 +0000 (04:25 +0100)]
[config] some declare_flag to Flag

2 years agosynchro-mutex example: don't have all pairs intermix their results
Martin Quinson [Mon, 14 Mar 2022 22:59:54 +0000 (23:59 +0100)]
synchro-mutex example: don't have all pairs intermix their results

Thanks @jean-edouard-boulanger for noticing.

2 years agoCope with Eigen 3.3.4 directly in cmake
Martin Quinson [Mon, 14 Mar 2022 21:50:43 +0000 (22:50 +0100)]
Cope with Eigen 3.3.4 directly in cmake

and remove the specific workaround for our robots. Also, move the
Eigen detection with the other external dependencies in the CMakeLists.

2 years agoFix the cleanup. Sorry @agiersch for breaking everything so consistently
Martin Quinson [Mon, 14 Mar 2022 21:08:58 +0000 (22:08 +0100)]
Fix the cleanup. Sorry @agiersch for breaking everything so consistently

2 years agoFix clang builds
Martin Quinson [Mon, 14 Mar 2022 20:46:27 +0000 (21:46 +0100)]
Fix clang builds

2 years agoTutorial: try to hint on some errors that the users may get when attempting the tutorial
Martin Quinson [Mon, 14 Mar 2022 20:42:30 +0000 (21:42 +0100)]
Tutorial: try to hint on some errors that the users may get when attempting the tutorial

2 years agomore C++ish in EngineImpl
Martin Quinson [Mon, 14 Mar 2022 07:39:20 +0000 (08:39 +0100)]
more C++ish in EngineImpl

Move some stuff to the object destructor where it belongs.

There is still a lot to do in there before it's real C++ code...