Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
5 weeks agoRedundant initializations. master
Arnaud Giersch [Tue, 5 Jul 2022 07:32:12 +0000 (09:32 +0200)]
Redundant initializations.

5 weeks ago[project-description] Fix extraction of the ns-3 version.
Arnaud Giersch [Mon, 4 Jul 2022 09:41:06 +0000 (11:41 +0200)]
[project-description] Fix extraction of the ns-3 version.

[ci-skip]

5 weeks agoReintroduce "3-dev" in list of ns3 known versions.
Arnaud Giersch [Sun, 3 Jul 2022 21:45:03 +0000 (23:45 +0200)]
Reintroduce "3-dev" in list of ns3 known versions.

5 weeks agoRecompute set of ns-3 lirairies.
Arnaud Giersch [Sun, 3 Jul 2022 20:57:26 +0000 (22:57 +0200)]
Recompute set of ns-3 lirairies.

Hack taken from CMakeLists.txt before commit
2104ee14b4207b9830a0ab424538ba900d4106bc Adapt to the upcoming ns-3 v3.36.1

5 weeks agoTry to fix number of '\' escapes in cmake regexps.
Arnaud Giersch [Sun, 3 Jul 2022 13:40:25 +0000 (15:40 +0200)]
Try to fix number of '\' escapes in cmake regexps.

5 weeks agosthread: don't intercept the main when run from smpirun
Martin Quinson [Sat, 2 Jul 2022 20:40:42 +0000 (22:40 +0200)]
sthread: don't intercept the main when run from smpirun

5 weeks agoAdapt to the upcoming ns-3 v3.36.1
Martin Quinson [Sat, 2 Jul 2022 11:39:11 +0000 (13:39 +0200)]
Adapt to the upcoming ns-3 v3.36.1

5 weeks agoMake libsthtread valgrind-aware.
Arnaud Giersch [Fri, 1 Jul 2022 15:04:19 +0000 (17:04 +0200)]
Make libsthtread valgrind-aware.

Without this change, libsthread is initialized twice when using valgrind:
one for the valgrind launcher, and one for the target program.

Use the environment variable VALGRIND_LIB to detect the usage of valgrind,
and don't divert main() when RUNNING_ON_VALGRIND returns 0.

Just hope that noboby has VALGRIND_LIB in its environment without using valgrind.
In this case, the check can be reinforced by looking for the substring "valgrind" in argv[0].

For example, run:
valgrind --trace-children=yes env LD_PRELOAD=./lib/libsthread.so ./examples/sthread/pthread-mutex-simple

5 weeks agoSonar issues.
Arnaud Giersch [Fri, 1 Jul 2022 08:37:11 +0000 (10:37 +0200)]
Sonar issues.

5 weeks agoFix test with ASan.
Arnaud Giersch [Thu, 30 Jun 2022 13:11:13 +0000 (15:11 +0200)]
Fix test with ASan.

It failed with: ASan runtime does not come first in initial library list; you should either link runtime to your application or manually preload it with LD_PRELOAD.

Use ASAN_OPTIONS=verify_asan_link_order=0 instead.

5 weeks agoPlease valgrind.
Arnaud Giersch [Thu, 30 Jun 2022 08:32:31 +0000 (10:32 +0200)]
Please valgrind.

5 weeks agoCosmetics (indentation, codefactor.io).
Arnaud Giersch [Thu, 30 Jun 2022 08:17:10 +0000 (10:17 +0200)]
Cosmetics (indentation, codefactor.io).

[ci-skip]

5 weeks agoMerge branch 'dev-get-hostname-faster' into 'master'
Arnaud Giersch [Thu, 30 Jun 2022 08:15:45 +0000 (08:15 +0000)]
Merge branch 'dev-get-hostname-faster' into 'master'

Make host_by_name faster

See merge request simgrid/simgrid!112

5 weeks agoMerge branch 'python_ptask' into 'master'
Arnaud Giersch [Thu, 30 Jun 2022 08:02:59 +0000 (08:02 +0000)]
Merge branch 'python_ptask' into 'master'

Add ptasks in the Python bindings

See merge request simgrid/simgrid!113

5 weeks agoFix the test
Tom Cornebize [Wed, 29 Jun 2022 15:48:58 +0000 (17:48 +0200)]
Fix the test

5 weeks agoAdd the new test in the cmake file
Tom Cornebize [Wed, 29 Jun 2022 15:40:32 +0000 (17:40 +0200)]
Add the new test in the cmake file

5 weeks agoAdd the new test in file MANIFEST.in
Tom Cornebize [Wed, 29 Jun 2022 14:51:42 +0000 (16:51 +0200)]
Add the new test in file MANIFEST.in

5 weeks agoAdd ptasks in the Python bindings
Tom Cornebize [Wed, 29 Jun 2022 13:24:48 +0000 (15:24 +0200)]
Add ptasks in the Python bindings

- This adds several functions in the Python bindings used for manipulating
  ptasks, such as parallel_execute or exec_init.
- This also adds the Engine.set_config function, needed for changing the
  configuration to 'host/model:ptask_L07' in the script.
- Finally, an exec-ptask.py example is added, exact translation of the
  C++ example s4u-exec-ptask.cpp.

5 weeks agoDisable sthread at the end of the sthread_main
Martin Quinson [Wed, 29 Jun 2022 06:16:16 +0000 (08:16 +0200)]
Disable sthread at the end of the sthread_main

6 weeks agoMerge branch 'master' of framagit.org:simgrid/simgrid
Martin Quinson [Tue, 28 Jun 2022 20:13:36 +0000 (22:13 +0200)]
Merge branch 'master' of framagit.org:simgrid/simgrid

6 weeks agoAdd a TESH for the new sthread feature
Martin Quinson [Tue, 28 Jun 2022 20:07:02 +0000 (22:07 +0200)]
Add a TESH for the new sthread feature

6 weeks agoSMPI_is_inited() and smpi_enabled() have the same purpose. Keep only the former.
Arnaud Giersch [Tue, 28 Jun 2022 13:08:05 +0000 (15:08 +0200)]
SMPI_is_inited() and smpi_enabled() have the same purpose. Keep only the former.

6 weeks agoNo need to duplicate functions.
Arnaud Giersch [Tue, 28 Jun 2022 09:40:37 +0000 (11:40 +0200)]
No need to duplicate functions.

6 weeks agoUncomment code.
Arnaud Giersch [Tue, 28 Jun 2022 12:38:07 +0000 (14:38 +0200)]
Uncomment code.

6 weeks agoEasy Sonar smells.
Arnaud Giersch [Tue, 28 Jun 2022 12:37:59 +0000 (14:37 +0200)]
Easy Sonar smells.

6 weeks agoUse std::string.
Arnaud Giersch [Tue, 28 Jun 2022 12:30:45 +0000 (14:30 +0200)]
Use std::string.

6 weeks agoMissing return in the raw path.
Arnaud Giersch [Tue, 28 Jun 2022 12:07:33 +0000 (14:07 +0200)]
Missing return in the raw path.

6 weeks agoAvoid memory leak when exception is thrown.
Arnaud Giersch [Tue, 28 Jun 2022 11:46:33 +0000 (13:46 +0200)]
Avoid memory leak when exception is thrown.

6 weeks agoMake sthread_inside_simgrid static into libsthread in the (vain) hope that it'll...
Martin Quinson [Mon, 27 Jun 2022 20:01:03 +0000 (22:01 +0200)]
Make sthread_inside_simgrid static into libsthread in the (vain) hope that it'll help the init/fini phases

but unfortunately the symptoms are exactly the same:
- default builds work well with sthread LD_PRELOAD'ed
- MC builds segfault once the second thread starts in this case
- ns-3 builds deadlock in dl_init with sthread

I'm still commiting this because I believe that breaking the hard
dependency of sthread -> simgrid goes in the right direction: If
sthread is alone in memory without simgrid (as it may happen at
init/fini phases), it's a rather bad idea for sthread to use a
variable that lives in simgrid symbols.

Maybe I should load simgrid dynamically with libdl instead of
depending on it to further untighten the dependency, but I'd prefer to
understand. Plus, it'd only help at init phase and ns-3 builds are not
the ones I'd prefer to fix here.

6 weeks agoDistcheck!
Arnaud Giersch [Mon, 27 Jun 2022 09:36:19 +0000 (11:36 +0200)]
Distcheck!

6 weeks agoMerge branch 's4u_enforce' into 'master'
Arnaud Giersch [Mon, 27 Jun 2022 09:30:00 +0000 (09:30 +0000)]
Merge branch 's4u_enforce' into 'master'

Implement s4u_enforce

See merge request simgrid/simgrid!111

6 weeks agoAnswer to Mt comments
Fabien Chaix [Mon, 27 Jun 2022 06:35:01 +0000 (09:35 +0300)]
Answer to Mt comments

6 weeks agomake sthread work out of MC build trees
Martin Quinson [Sun, 26 Jun 2022 10:48:35 +0000 (12:48 +0200)]
make sthread work out of MC build trees

6 weeks agoMake vm_by_name() public and modify c-cloud-migration to use new functions
Fabien Chaix [Sat, 25 Jun 2022 22:08:45 +0000 (01:08 +0300)]
Make vm_by_name() public and modify c-cloud-migration to use new functions

6 weeks agotentative of implementing pthread_join, and to ensure that we are inside simgrid...
Martin Quinson [Sat, 25 Jun 2022 10:02:58 +0000 (12:02 +0200)]
tentative of implementing pthread_join, and to ensure that we are inside simgrid once the context stops

6 weeks agoMake sure that sthread_inside_simgrid is initially 1 to protect all lib constructors
Martin Quinson [Fri, 24 Jun 2022 23:11:09 +0000 (01:11 +0200)]
Make sure that sthread_inside_simgrid is initially 1 to protect all lib constructors

Even the ones that we don't control, such as gdb's...

In addition, there is no need to define sthread_inside_simgrid in
libsimgrid. We can keep it to libsthread where it belongs.

Also do some other cleanups around.

6 weeks agosthread is not a binary [anymore] but a library
Martin Quinson [Fri, 24 Jun 2022 21:29:03 +0000 (23:29 +0200)]
sthread is not a binary [anymore] but a library

6 weeks agosthread does not exist on FreeBSD so don't break MC builds there
Martin Quinson [Fri, 24 Jun 2022 21:23:38 +0000 (23:23 +0200)]
sthread does not exist on FreeBSD so don't break MC builds there

6 weeks agoDocument one recent change
Martin Quinson [Fri, 24 Jun 2022 21:12:27 +0000 (23:12 +0200)]
Document one recent change

6 weeks agoMerge branch 'master' of framagit.org:simgrid/simgrid
Martin Quinson [Fri, 24 Jun 2022 21:03:35 +0000 (23:03 +0200)]
Merge branch 'master' of framagit.org:simgrid/simgrid

6 weeks agoOngoing attempt for sthread, an automatic intercepter of pthread operations
Martin Quinson [Fri, 24 Jun 2022 20:23:28 +0000 (22:23 +0200)]
Ongoing attempt for sthread, an automatic intercepter of pthread operations

There is no test yet, because it's *almost* working.

6 weeks agoAdd a function to determine whether SMPI is currently used
Martin Quinson [Sun, 12 Jun 2022 23:00:11 +0000 (01:00 +0200)]
Add a function to determine whether SMPI is currently used

6 weeks agoQuick and dirty fix to speed up get_host_by_name
Fabien Chaix [Thu, 16 Jun 2022 17:14:33 +0000 (20:14 +0300)]
Quick and dirty fix to speed up get_host_by_name

6 weeks agoChangeLog [ci-skip]
Arnaud Giersch [Thu, 23 Jun 2022 09:20:04 +0000 (11:20 +0200)]
ChangeLog [ci-skip]

6 weeks agoMissing include (for uintptr_t).
Arnaud Giersch [Thu, 23 Jun 2022 08:20:28 +0000 (10:20 +0200)]
Missing include (for uintptr_t).

6 weeks agoRemove the -Wformat-security warning
Tom Cornebize [Thu, 23 Jun 2022 07:54:20 +0000 (09:54 +0200)]
Remove the -Wformat-security warning

Applying the patch from @agiersch

7 weeks agoRemove useless statements
Tom Cornebize [Tue, 21 Jun 2022 13:35:27 +0000 (15:35 +0200)]
Remove useless statements

7 weeks agoRenaming: s4u_enforce -> xbt_enforce
Tom Cornebize [Tue, 21 Jun 2022 13:26:28 +0000 (15:26 +0200)]
Renaming: s4u_enforce -> xbt_enforce

7 weeks agoMissing 'override' specifier.
Arnaud Giersch [Tue, 21 Jun 2022 12:10:42 +0000 (14:10 +0200)]
Missing 'override' specifier.

7 weeks agoMerge branch 'dev-cpuimpl-used' into 'master'
Arnaud Giersch [Tue, 21 Jun 2022 12:02:16 +0000 (12:02 +0000)]
Merge branch 'dev-cpuimpl-used' into 'master'

Trigger new engine solve upon host events such as host on/off

See merge request simgrid/simgrid!109

7 weeks agoFix one tesh test
Tom Cornebize [Tue, 21 Jun 2022 10:51:39 +0000 (12:51 +0200)]
Fix one tesh test

7 weeks agoUpdate the changelog for s4u_enforce
Tom Cornebize [Tue, 21 Jun 2022 09:49:12 +0000 (11:49 +0200)]
Update the changelog for s4u_enforce

7 weeks agoImplement s4u_enforce
Tom Cornebize [Tue, 21 Jun 2022 08:57:36 +0000 (10:57 +0200)]
Implement s4u_enforce

This adds a new macro, s4u_enforce, with the same syntax as xbt_assert.
The difference with xbt_assert is that this macro will throw an
exception if the statement is false, instead of calling abort().

7 weeks agoMerge branch 'fix_python' into 'master'
Arnaud Giersch [Fri, 17 Jun 2022 07:28:31 +0000 (07:28 +0000)]
Merge branch 'fix_python' into 'master'

Fix the put/get(_async) mailbox methods in the Python bindings

See merge request simgrid/simgrid!110

7 weeks agoFix the put/get(_async) mailbox methods in the Python bindings
Tom Cornebize [Thu, 16 Jun 2022 19:10:47 +0000 (21:10 +0200)]
Fix the put/get(_async) mailbox methods in the Python bindings

The message sizes had to fit in an int, which is too small for
some reasonable cases (e.g. sending 10 GB).

8 weeks agoHint about how to configure with ninja instead of make
Martin Quinson [Sun, 12 Jun 2022 22:58:13 +0000 (00:58 +0200)]
Hint about how to configure with ninja instead of make

8 weeks agoFix regression tests
Fabien Chaix [Fri, 10 Jun 2022 08:03:09 +0000 (11:03 +0300)]
Fix regression tests

8 weeks agoMC: better encapsulation design
Martin Quinson [Mon, 23 May 2022 22:36:32 +0000 (00:36 +0200)]
MC: better encapsulation design

8 weeks agoAlways advertise CpuImpl as used to trigger Engine refresh upon trace event
Fabien Chaix [Fri, 10 Jun 2022 07:21:26 +0000 (10:21 +0300)]
Always advertise CpuImpl as used to trigger Engine refresh upon trace event

2 months agos/NULL/nullptr/ [ci-skip]
Arnaud Giersch [Thu, 9 Jun 2022 06:59:50 +0000 (08:59 +0200)]
s/NULL/nullptr/ [ci-skip]

2 months agoFix build with graphviz >= 3.
Arnaud Giersch [Wed, 8 Jun 2022 11:02:14 +0000 (13:02 +0200)]
Fix build with graphviz >= 3.

2 months agoMatch xbt_malloc with xbt_free.
Arnaud Giersch [Wed, 8 Jun 2022 09:31:08 +0000 (11:31 +0200)]
Match xbt_malloc with xbt_free.

2 months agoUseless use of xargs.
Arnaud Giersch [Sun, 5 Jun 2022 10:34:02 +0000 (12:34 +0200)]
Useless use of xargs.

2 months agoPropagate const attribute (sonar).
Arnaud Giersch [Sat, 4 Jun 2022 08:43:47 +0000 (10:43 +0200)]
Propagate const attribute (sonar).

2 months agoUse xbt_malloc that never return null.
Arnaud Giersch [Sat, 4 Jun 2022 08:38:17 +0000 (10:38 +0200)]
Use xbt_malloc that never return null.

2 months agoAddress a few "null dereference" warnings from fbinfer.
Arnaud Giersch [Fri, 3 Jun 2022 14:29:57 +0000 (16:29 +0200)]
Address a few "null dereference" warnings from fbinfer.

2 months agoCoding style: snake_case.
Arnaud Giersch [Fri, 3 Jun 2022 14:14:44 +0000 (16:14 +0200)]
Coding style: snake_case.

2 months agoAnother batch of pointer-to-const (sonar).
Arnaud Giersch [Thu, 2 Jun 2022 07:58:05 +0000 (09:58 +0200)]
Another batch of pointer-to-const (sonar).

2 months agoCall smpi_mpi_init before smpi_bench_begin.
Arnaud Giersch [Wed, 1 Jun 2022 09:44:12 +0000 (11:44 +0200)]
Call smpi_mpi_init before smpi_bench_begin.

Fix simgrid/simgrid#109

2 months agoVarious small fixes.
Arnaud Giersch [Wed, 1 Jun 2022 08:10:10 +0000 (10:10 +0200)]
Various small fixes.

* parameter smpi/runnning-power has been renamed
* fix error message

[ci-skip]

2 months agoAdd default value for every member variable (useful with default constructor).
Arnaud Giersch [Mon, 30 May 2022 15:17:24 +0000 (17:17 +0200)]
Add default value for every member variable (useful with default constructor).

2 months agoDelete unusable default constructor.
Arnaud Giersch [Mon, 30 May 2022 15:08:26 +0000 (17:08 +0200)]
Delete unusable default constructor.

2 months agoarm systems have unsigned chars by default, enforce signedness for consistancy
Augustin Degomme [Mon, 30 May 2022 15:28:44 +0000 (17:28 +0200)]
arm systems have unsigned chars by default, enforce signedness for consistancy

2 months agoChangeLog: move closed issue to the right section.
Arnaud Giersch [Mon, 30 May 2022 13:12:21 +0000 (15:12 +0200)]
ChangeLog: move closed issue to the right section.

2 months agoChangelog update
Tom Cornebize [Mon, 30 May 2022 13:07:53 +0000 (15:07 +0200)]
Changelog update

2 months agoMerge selected changes from branch 'simgrid-Jesse-McDonald-master-patch-09242'
Arnaud Giersch [Mon, 30 May 2022 09:55:13 +0000 (11:55 +0200)]
Merge selected changes from branch 'simgrid-Jesse-McDonald-master-patch-09242'

(ignore the first change which is not valid)

2 months agoPlease static checkers.
Arnaud Giersch [Mon, 30 May 2022 09:05:15 +0000 (11:05 +0200)]
Please static checkers.

2 months agoMerge branch 'graphicator_seal' into 'master'
Arnaud Giersch [Wed, 25 May 2022 12:44:24 +0000 (12:44 +0000)]
Merge branch 'graphicator_seal' into 'master'

Seal the platform in graphicator before dumping

See merge request simgrid/simgrid!107

2 months agoSeal the platform in graphicator before dumping
Tom Cornebize [Wed, 25 May 2022 12:02:40 +0000 (14:02 +0200)]
Seal the platform in graphicator before dumping

2 months agoUpdate .mailmap [ci-skip].
Arnaud Giersch [Wed, 25 May 2022 10:15:57 +0000 (12:15 +0200)]
Update .mailmap [ci-skip].

2 months agoAvoid null dereference in assert (when !dst).
Arnaud Giersch [Wed, 25 May 2022 10:07:10 +0000 (12:07 +0200)]
Avoid null dereference in assert (when !dst).

2 months agoMerge branch 'simgrid-platform_robustness'
Arnaud Giersch [Wed, 25 May 2022 10:01:19 +0000 (12:01 +0200)]
Merge branch 'simgrid-platform_robustness'

2 months agoMerge branch 'simgrid-topo_simplification'
Arnaud Giersch [Wed, 25 May 2022 09:42:32 +0000 (11:42 +0200)]
Merge branch 'simgrid-topo_simplification'

2 months agoTwo more sonar issues.
Arnaud Giersch [Wed, 25 May 2022 07:12:06 +0000 (09:12 +0200)]
Two more sonar issues.

2 months agoDeeper check on src and dst in add_route method
Tom Cornebize [Wed, 25 May 2022 08:50:13 +0000 (10:50 +0200)]
Deeper check on src and dst in add_route method

2 months agoImprove the supernode.py script
Tom Cornebize [Wed, 25 May 2022 08:34:07 +0000 (10:34 +0200)]
Improve the supernode.py script

- Add a --simplify option to remove the "link" vertices from the graph
  (and thus have a smaller visualization).
- Output file name is now a command line argument.
- Intermediate files are now put in a temporary directory, instead of
  the working directory.
- Better error display.

2 months agoUnused import.
Arnaud Giersch [Sat, 21 May 2022 07:48:40 +0000 (09:48 +0200)]
Unused import.

[ci-skip]

2 months agoSonar issues.
Arnaud Giersch [Tue, 24 May 2022 12:02:57 +0000 (14:02 +0200)]
Sonar issues.

2 months agoUseless usage of c_str().
Arnaud Giersch [Fri, 20 May 2022 12:43:50 +0000 (14:43 +0200)]
Useless usage of c_str().

2 months agoModify test to run latest libsupernode.so at least once.
Arnaud Giersch [Fri, 20 May 2022 09:10:19 +0000 (11:10 +0200)]
Modify test to run latest libsupernode.so at least once.

2 months agoToday's sonar/codefactor issues.
Arnaud Giersch [Fri, 20 May 2022 08:37:38 +0000 (10:37 +0200)]
Today's sonar/codefactor issues.

2 months agoMerge branch 'dev-add_comm_fault_scenario2' into 'master'
Augustin Degomme [Fri, 20 May 2022 08:24:24 +0000 (08:24 +0000)]
Merge branch 'dev-add_comm_fault_scenario2' into 'master'

Run all comm fault scenarios now that other MRs have been accepted

See merge request simgrid/simgrid!104

2 months agoRemove debug messages from tesh because it makes the test fragile
Fabien Chaix [Fri, 20 May 2022 08:08:50 +0000 (11:08 +0300)]
Remove debug messages from tesh because it makes the test fragile

2 months agofix for 32 bits
Augustin Degomme [Fri, 20 May 2022 07:45:28 +0000 (07:45 +0000)]
fix for 32 bits

2 months agoRun all scenarios now that other MRs have been accepted
Fabien Chaix [Fri, 20 May 2022 06:33:01 +0000 (09:33 +0300)]
Run all scenarios now that other MRs have been accepted

2 months agoMerge branch 'dev-add_comm_fault_scenario' into 'master'
Augustin Degomme [Fri, 20 May 2022 07:23:12 +0000 (07:23 +0000)]
Merge branch 'dev-add_comm_fault_scenario' into 'master'

Add a test to cover many communication fault scenarios

See merge request simgrid/simgrid!103

2 months agoRevert "Run all scenarios now that other MRs have been accepted"
Fabien Chaix [Fri, 20 May 2022 07:06:51 +0000 (07:06 +0000)]
Revert "Run all scenarios now that other MRs have been accepted"

This reverts commit 00c4012bc527af7b7d532ad4a20eb83fe55e8b20

2 months agoRun all scenarios now that other MRs have been accepted
Fabien Chaix [Fri, 20 May 2022 06:41:06 +0000 (06:41 +0000)]
Run all scenarios now that other MRs have been accepted

2 months agomore enum to use Simgrid macros
Fabien Chaix [Thu, 19 May 2022 15:34:07 +0000 (18:34 +0300)]
more enum to use Simgrid macros

2 months agoUse Simgrid macro to get cleaner enums
Fabien Chaix [Thu, 19 May 2022 15:18:26 +0000 (18:18 +0300)]
Use Simgrid macro to get cleaner enums