Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
4 years agoSimplify the API between Engine and EngineImpl when registering functions
Martin Quinson [Tue, 4 Feb 2020 16:36:28 +0000 (17:36 +0100)]
Simplify the API between Engine and EngineImpl when registering functions

Engine is providing several prototypes to serve S4U, SMPI, MSG and all
friends. It was providing all these prototypes to EngineImpl which was
in charge of building the ActorCodeFactory, ie the lambda in charge of
building a lambda code that the actor can execute.

Now, Engine is building the ActorCodeFactory and EngineImpl is only
providing one prototype.

While I was at it, I moved the registered functions and default
function from simix_global (which should die at some point) to the
EngineImpl, and killed a SIMIX function defined in Context.hpp (yuk).

I also made ActorCodeFactory a public type in forward.h, which
requires to include <vector> in forward.h. I guess we can live with it.

I also introduced an EngineImpl::get_instance() even if that require a
circular dependency between Engine and EngineImpl. I did not find a
better solution.

Now, MSG can directly build its ActorCodeFactory and pass it to the
Engine. It fixes the casting issues we had on user code, and remove
the need for an extra flag to calm the compiler about this ugly cast.

4 years agoconvert two tesh to use s4u instead of using SIMIX directly
Martin Quinson [Tue, 4 Feb 2020 16:18:36 +0000 (17:18 +0100)]
convert two tesh to use s4u instead of using SIMIX directly

4 years agoFix mess between smx_activity_t and ActivityImplPtr.
Arnaud Giersch [Tue, 4 Feb 2020 10:36:56 +0000 (11:36 +0100)]
Fix mess between smx_activity_t and ActivityImplPtr.

The former hides a raw pointer, while the latter is a boost::intrusive_ptr.

4 years agoKill duplicate definition.
Arnaud Giersch [Tue, 4 Feb 2020 12:29:33 +0000 (13:29 +0100)]
Kill duplicate definition.

4 years agoget my crude hack in MSG to compile on both gcc and clang
Martin Quinson [Tue, 4 Feb 2020 13:08:09 +0000 (14:08 +0100)]
get my crude hack in MSG to compile on both gcc and clang

4 years agodocker: don't build java nor MSG on unstable
Martin Quinson [Tue, 4 Feb 2020 12:48:30 +0000 (13:48 +0100)]
docker: don't build java nor MSG on unstable

4 years agoClearly state that we don't care about the return code of actors
Martin Quinson [Tue, 4 Feb 2020 12:21:51 +0000 (13:21 +0100)]
Clearly state that we don't care about the return code of actors

Earlier, the actor had the exact same prototype than the C main()
function. In particular, it was supposed to return an integer. But
that value is ignored in simgrid since years (or maybe since ever).

So, change the expected return code to 'void' to make this clear and
reduce the clutter in user code.

The deprecation code should be in place until v3.30 for s4u code.

The MSG clients are not modified, and the MSG implementation is only
slightly modified with a crude cast (that mandates the
-Wno-error=cast-function-type flag on the command line when compiling
MSG).

4 years agopython: fix a breakage seen on the robot building the documentation
Martin Quinson [Tue, 4 Feb 2020 11:04:08 +0000 (12:04 +0100)]
python: fix a breakage seen on the robot building the documentation

Not sure of why I didn't see it elsewhere, but anyway. There was no
reason to deal with sequential vs. parallel execs in the python world,
as the C++ worlds already deals with it.

4 years agofix make distcheck and pip compile
Martin Quinson [Tue, 4 Feb 2020 10:54:25 +0000 (11:54 +0100)]
fix make distcheck and pip compile

4 years agoModern C++: prefer type aliasing with using to C-style typedef
Martin Quinson [Sun, 2 Feb 2020 21:43:36 +0000 (22:43 +0100)]
Modern C++: prefer type aliasing with using to C-style typedef

4 years agoAdd the 2 new C examples to the doc; use sg_comm_wait_any in example instead of sg_co...
Martin Quinson [Tue, 4 Feb 2020 10:13:36 +0000 (11:13 +0100)]
Add the 2 new C examples to the doc; use sg_comm_wait_any in example instead of sg_comm_wait_any_for

4 years agodoc: allow to document C examples
Martin Quinson [Tue, 4 Feb 2020 10:07:27 +0000 (11:07 +0100)]
doc: allow to document C examples

4 years agofixups in the C API
Martin Quinson [Tue, 4 Feb 2020 09:58:59 +0000 (10:58 +0100)]
fixups in the C API

- Fix the prototype of sg_actor_start to fix the constness of argv
- Introduce sg_mailbox_put

4 years agonew C example on actor creation
Martin Quinson [Tue, 4 Feb 2020 09:58:01 +0000 (10:58 +0100)]
new C example on actor creation

4 years agoc/async-waitany: cleanups to align with cpp and py
Martin Quinson [Tue, 4 Feb 2020 09:55:35 +0000 (10:55 +0100)]
c/async-waitany: cleanups to align with cpp and py

4 years agomove this first C example to the example directory + cosmetics in outputs
Martin Quinson [Tue, 4 Feb 2020 09:34:22 +0000 (10:34 +0100)]
move this first C example to the example directory + cosmetics in outputs

4 years agono dynar in the new C interface (+cleanups in CMakeLists)
Martin Quinson [Tue, 4 Feb 2020 09:18:07 +0000 (10:18 +0100)]
no dynar in the new C interface (+cleanups in CMakeLists)

4 years agoFix the refcounting in this C example
Martin Quinson [Tue, 4 Feb 2020 08:51:22 +0000 (09:51 +0100)]
Fix the refcounting in this C example

4 years agofix refcounting issues
Frederic Suter [Tue, 4 Feb 2020 08:34:03 +0000 (09:34 +0100)]
fix refcounting issues

4 years agoconvert a msg test to C-s4u (borken for now)
Frederic Suter [Mon, 3 Feb 2020 15:09:30 +0000 (16:09 +0100)]
convert a msg test to C-s4u (borken for now)

4 years agoC interface to Comm::wait_any_for
Frederic Suter [Mon, 3 Feb 2020 15:07:36 +0000 (16:07 +0100)]
C interface to Comm::wait_any_for

4 years agoadd a few functions to Mailbox C API
Frederic Suter [Mon, 3 Feb 2020 15:04:53 +0000 (16:04 +0100)]
add a few functions to Mailbox C API

4 years agoadd more C types
Frederic Suter [Mon, 3 Feb 2020 15:03:42 +0000 (16:03 +0100)]
add more C types
* sg_comm_t => CommPtr
* sg_mailbox_t => Mailbox*

4 years agoIntroduce XBT_ATTRIB_DEPRECATED_v330.
Arnaud Giersch [Sun, 2 Feb 2020 20:16:41 +0000 (21:16 +0100)]
Introduce XBT_ATTRIB_DEPRECATED_v330.

4 years agocmake: kill an unused variable: SIMGRID_VERSION_DATE
Martin Quinson [Sun, 2 Feb 2020 16:28:40 +0000 (17:28 +0100)]
cmake: kill an unused variable: SIMGRID_VERSION_DATE

4 years agodocker: update the link to the latest stable release
Martin Quinson [Sun, 2 Feb 2020 15:58:09 +0000 (16:58 +0100)]
docker: update the link to the latest stable release

4 years agoStart the dev of 3.26
Martin Quinson [Sun, 2 Feb 2020 15:30:05 +0000 (16:30 +0100)]
Start the dev of 3.26

4 years agoMerge branch 'stable'
Martin Quinson [Sun, 2 Feb 2020 15:31:58 +0000 (16:31 +0100)]
Merge branch 'stable'

4 years agoRelease 3.25 v3.25
Martin Quinson [Sun, 2 Feb 2020 12:08:04 +0000 (13:08 +0100)]
Release 3.25

4 years agoRelease 3.25
Martin Quinson [Sun, 2 Feb 2020 12:08:04 +0000 (13:08 +0100)]
Release 3.25

4 years agofinish the API under the new format
Martin Quinson [Sat, 1 Feb 2020 23:46:50 +0000 (00:46 +0100)]
finish the API under the new format

- Add some 'const' method decorators on my way
- We cannot drop the breathe extension of sphinx yet because autodoxy
  does not parse typedef (nor enums) yet so we use breathe for that
- Other bugs surfaced in autodoxy, but I'm short on time so I worked
  around them. See find-missing.ignore for a list of weird things.

4 years agoautodoxy: Don't ignore const-ness discrepencies in prototype
Martin Quinson [Sat, 1 Feb 2020 21:47:48 +0000 (22:47 +0100)]
autodoxy: Don't ignore const-ness discrepencies in prototype

It is fragile and makes the code less readable. Fixing the doc
actually works (I was conserned that the extra space could break
something), so there is no point.

4 years agono need to link the python doc to the C++ one with the new formating
Martin Quinson [Sat, 1 Feb 2020 20:40:23 +0000 (21:40 +0100)]
no need to link the python doc to the C++ one with the new formating

4 years agoAdd suppressions for TSan.
Arnaud Giersch [Sat, 1 Feb 2020 16:29:35 +0000 (17:29 +0100)]
Add suppressions for TSan.

4 years agoRename ASAN suppressions file.
Arnaud Giersch [Sat, 1 Feb 2020 13:14:50 +0000 (14:14 +0100)]
Rename ASAN suppressions file.

Existing suppressions seem useless nowadays, comment them.

4 years ago[sonar] const++
Arnaud Giersch [Sat, 1 Feb 2020 13:11:52 +0000 (14:11 +0100)]
[sonar] const++

4 years agodocument Virtual machines
Martin Quinson [Sat, 1 Feb 2020 15:25:52 +0000 (16:25 +0100)]
document Virtual machines

Even if I hate to document code that should change. Here, we should
kill the fact that s4u::VirtualMachine extends s4u::Host, as it only
complicates things for nothing. It probably requires that we
dupplicate the methods this_actor::exec() and Actor::set_host() to add
a variant taking a VM instead of the host, but that would still be an
improvement.

Also, the zone C type should probably be renamed into netzone for
consistency.

4 years agodocument netzones
Martin Quinson [Sat, 1 Feb 2020 14:40:49 +0000 (15:40 +0100)]
document netzones

4 years agodoc: fixes and document Link in the new way
Martin Quinson [Sat, 1 Feb 2020 11:54:15 +0000 (12:54 +0100)]
doc: fixes and document Link in the new way

4 years agoautodoxy: don't complain if the provided prototype is missing 'const'
Martin Quinson [Sat, 1 Feb 2020 11:53:34 +0000 (12:53 +0100)]
autodoxy: don't complain if the provided prototype is missing 'const'

4 years agofinish the doc under the new format for Host
Martin Quinson [Sat, 1 Feb 2020 01:12:42 +0000 (02:12 +0100)]
finish the doc under the new format for Host

4 years agoignore MSG and friends on sonar
Martin Quinson [Fri, 31 Jan 2020 16:56:27 +0000 (17:56 +0100)]
ignore MSG and friends on sonar

4 years agoFix test mc/mutex-handling.
Arnaud Giersch [Fri, 31 Jan 2020 14:18:16 +0000 (15:18 +0100)]
Fix test mc/mutex-handling.

It runs correctly now, but I'm not sure of its results.

In particular, it seems to find a counter-example correclty, contrarily of what
is written in leading comments.

4 years agoCosmetics: use std::vector, so that it's automatically initialized and free'd.
Arnaud Giersch [Fri, 31 Jan 2020 13:47:27 +0000 (14:47 +0100)]
Cosmetics: use std::vector, so that it's automatically initialized and free'd.

4 years agoadd std=legacy flags for f77/f90 codes that don't compile anymore with gfortran ...
Augustin Degomme [Fri, 31 Jan 2020 12:23:08 +0000 (13:23 +0100)]
add std=legacy flags for f77/f90 codes that don't compile anymore with gfortran >= 10

4 years agotry to get the mpich3 tests to compile with gfortran 10
Martin Quinson [Fri, 31 Jan 2020 11:24:01 +0000 (12:24 +0100)]
try to get the mpich3 tests to compile with gfortran 10

4 years agodocs/installing: improve the python part
Martin Quinson [Fri, 31 Jan 2020 11:20:46 +0000 (12:20 +0100)]
docs/installing: improve the python part

4 years agodocument the enable_msg build-time flag
Martin Quinson [Fri, 31 Jan 2020 09:08:30 +0000 (10:08 +0100)]
document the enable_msg build-time flag

4 years agolower-case -Denable_msg and improve changelog
Martin Quinson [Fri, 31 Jan 2020 09:03:13 +0000 (10:03 +0100)]
lower-case -Denable_msg and improve changelog

4 years agoFinally disable deprecated options (Java and MSG) for Coverage.
Arnaud Giersch [Fri, 31 Jan 2020 10:05:47 +0000 (11:05 +0100)]
Finally disable deprecated options (Java and MSG) for Coverage.

4 years agoForgot a newline.
Arnaud Giersch [Fri, 31 Jan 2020 10:03:25 +0000 (11:03 +0100)]
Forgot a newline.

4 years agoCosmetics: consistently add an empty line between versions.
Arnaud Giersch [Fri, 31 Jan 2020 09:56:05 +0000 (10:56 +0100)]
Cosmetics: consistently add an empty line between versions.

4 years agoCosmetics: fix "Malformed whitespace in C++" spotted by codefactor.io.
Arnaud Giersch [Fri, 31 Jan 2020 09:49:53 +0000 (10:49 +0100)]
Cosmetics: fix "Malformed whitespace in C++" spotted by codefactor.io.

4 years agoTrailing semicolons are not needed (codefactor.io/lintr).
Arnaud Giersch [Fri, 31 Jan 2020 09:32:35 +0000 (10:32 +0100)]
Trailing semicolons are not needed (codefactor.io/lintr).

4 years agoPlease codefactor.io/ShellCheck.
Arnaud Giersch [Fri, 31 Jan 2020 09:28:38 +0000 (10:28 +0100)]
Please codefactor.io/ShellCheck.

4 years agoEnable MSG for Coverage builds.
Arnaud Giersch [Fri, 31 Jan 2020 09:24:39 +0000 (10:24 +0100)]
Enable MSG for Coverage builds.

4 years agoRemove old workaround.
Arnaud Giersch [Thu, 30 Jan 2020 20:57:16 +0000 (21:57 +0100)]
Remove old workaround.

4 years agoonly install the msg header if MSG was compiled in
Martin Quinson [Fri, 31 Jan 2020 08:46:13 +0000 (09:46 +0100)]
only install the msg header if MSG was compiled in

4 years agoAdd some parallel tests in S4U too
Martin Quinson [Fri, 31 Jan 2020 08:39:03 +0000 (09:39 +0100)]
Add some parallel tests in S4U too

4 years agofix tests when building lua w/o MSG
Martin Quinson [Fri, 31 Jan 2020 08:27:30 +0000 (09:27 +0100)]
fix tests when building lua w/o MSG

4 years agofix pip builds
Martin Quinson [Thu, 30 Jan 2020 23:52:51 +0000 (00:52 +0100)]
fix pip builds

4 years agorevalidate a python tesh after the merge of SimDAG++
Martin Quinson [Thu, 30 Jan 2020 23:37:41 +0000 (00:37 +0100)]
revalidate a python tesh after the merge of SimDAG++

4 years agoMerge branch 'master' of framagit.org:simgrid/simgrid
Martin Quinson [Thu, 30 Jan 2020 23:34:18 +0000 (00:34 +0100)]
Merge branch 'master' of framagit.org:simgrid/simgrid

4 years agotravis: windows needs java+MSG
Martin Quinson [Thu, 30 Jan 2020 23:29:36 +0000 (00:29 +0100)]
travis: windows needs java+MSG

4 years agobe coherent on building Java/MSG on gitlab-ci, too
Martin Quinson [Thu, 30 Jan 2020 23:09:23 +0000 (00:09 +0100)]
be coherent on building Java/MSG on gitlab-ci, too

4 years agobe coherent on Java vs. MSG on travis, circleci and appveyor
Martin Quinson [Thu, 30 Jan 2020 22:36:08 +0000 (23:36 +0100)]
be coherent on Java vs. MSG on travis, circleci and appveyor

4 years agoMerge branch 'depencencies' into 'master'
Martin Quinson [Thu, 30 Jan 2020 22:33:36 +0000 (23:33 +0100)]
Merge branch 'depencencies' into 'master'

Dependencies: First working PoC of SimDAG++

See merge request simgrid/simgrid!27

4 years agobummer
Martin Quinson [Thu, 30 Jan 2020 22:14:37 +0000 (23:14 +0100)]
bummer

4 years agoJenkins: don't fail when Java/no MSG
Martin Quinson [Thu, 30 Jan 2020 22:12:01 +0000 (23:12 +0100)]
Jenkins: don't fail when Java/no MSG

4 years agojenkins: Add MSG/NOMSG to the Flags job alternative
Martin Quinson [Thu, 30 Jan 2020 22:10:54 +0000 (23:10 +0100)]
jenkins: Add MSG/NOMSG to the Flags job alternative

4 years agofix make distcheck
Martin Quinson [Thu, 30 Jan 2020 20:12:43 +0000 (21:12 +0100)]
fix make distcheck

4 years agojenkins: turn Java and MSG off on non-MC builds
Martin Quinson [Thu, 30 Jan 2020 19:56:12 +0000 (20:56 +0100)]
jenkins: turn Java and MSG off on non-MC builds

We should probably disable it all together at some point, but keep
them for now. Since some MC tests are not ported to s4u yet, it will
be MC that keeps MSG for now.

4 years agoMerge branch 'master' of framagit.org:simgrid/simgrid
Martin Quinson [Thu, 30 Jan 2020 19:49:28 +0000 (20:49 +0100)]
Merge branch 'master' of framagit.org:simgrid/simgrid

4 years agoAdd a cmake flag to not compile MSG at all
Martin Quinson [Thu, 30 Jan 2020 19:49:18 +0000 (20:49 +0100)]
Add a cmake flag to not compile MSG at all

4 years agoplug leak and check received payload
Frederic Suter [Thu, 30 Jan 2020 17:05:06 +0000 (18:05 +0100)]
plug leak and check received payload

4 years agoMerge branch 'master' into depencencies
Frederic Suter [Thu, 30 Jan 2020 16:43:06 +0000 (17:43 +0100)]
Merge branch 'master' into depencencies

4 years agotest dependencies with Comm too
Frederic Suter [Thu, 30 Jan 2020 16:38:42 +0000 (17:38 +0100)]
test dependencies with Comm too

4 years agoadd smpi_execute_flops_benched call
Augustin Degomme [Thu, 30 Jan 2020 15:26:13 +0000 (16:26 +0100)]
add smpi_execute_flops_benched call

4 years agoallow for chaining of add_successor
Frederic Suter [Thu, 30 Jan 2020 14:37:40 +0000 (15:37 +0100)]
allow for chaining of add_successor

4 years agosimplify dependencies stuff (less accessors)
Frederic Suter [Thu, 30 Jan 2020 12:53:59 +0000 (13:53 +0100)]
simplify dependencies stuff (less accessors)

4 years agodependencies support for Comm (needs testing)
Frederic Suter [Thu, 30 Jan 2020 10:53:13 +0000 (11:53 +0100)]
dependencies support for Comm (needs testing)

4 years agoimplement generic ActivityPtr
Martin Quinson [Thu, 30 Jan 2020 11:00:58 +0000 (12:00 +0100)]
implement generic ActivityPtr

4 years agosmall cleanups in the s4u::Activities
Martin Quinson [Thu, 30 Jan 2020 10:42:41 +0000 (11:42 +0100)]
small cleanups in the s4u::Activities

4 years agofix a FIXME
Martin Quinson [Thu, 30 Jan 2020 10:29:57 +0000 (11:29 +0100)]
fix a FIXME

4 years agouse ActivityPtr
Frederic Suter [Thu, 30 Jan 2020 10:20:23 +0000 (11:20 +0100)]
use ActivityPtr

4 years agoMerge branch 'master' into depencencies
Frederic Suter [Thu, 30 Jan 2020 10:06:01 +0000 (11:06 +0100)]
Merge branch 'master' into depencencies

4 years agoPrepare the upcoming release.
Martin Quinson [Wed, 29 Jan 2020 23:01:52 +0000 (00:01 +0100)]
Prepare the upcoming release.

- The documentation is not completely reorganized yet
- The dependencies branch still needs some love to be merged

But we still plan for a 3.25 release this week-end, if luck permits.

4 years agoMerge branch 'master' into depencencies
Frederic Suter [Wed, 29 Jan 2020 20:21:15 +0000 (21:21 +0100)]
Merge branch 'master' into depencencies

4 years agocosmetics in CMakeLists.txt
Martin Quinson [Sun, 26 Jan 2020 10:07:16 +0000 (11:07 +0100)]
cosmetics in CMakeLists.txt

4 years agoMC: more specific doc in the user API
Martin Quinson [Tue, 21 Jan 2020 15:08:14 +0000 (16:08 +0100)]
MC: more specific doc in the user API

4 years agoMC: various cleanups done while debugging something
Martin Quinson [Tue, 21 Jan 2020 14:48:30 +0000 (15:48 +0100)]
MC: various cleanups done while debugging something

4 years agoMC: when exec()ing the app, first pass any parameters passed to the MC
Martin Quinson [Tue, 21 Jan 2020 11:12:17 +0000 (12:12 +0100)]
MC: when exec()ing the app, first pass any parameters passed to the MC

4 years agostart documenting Hosts in the new way
Martin Quinson [Sun, 12 Jan 2020 14:32:50 +0000 (15:32 +0100)]
start documenting Hosts in the new way

4 years agoDocument disks in the new way
Martin Quinson [Sat, 11 Jan 2020 17:27:09 +0000 (18:27 +0100)]
Document disks in the new way

4 years agofiddle with the doc of actors
Martin Quinson [Fri, 10 Jan 2020 10:57:31 +0000 (11:57 +0100)]
fiddle with the doc of actors

4 years agoadd some fortran bindings, useful for bigdft
Augustin Degomme [Wed, 29 Jan 2020 13:54:43 +0000 (14:54 +0100)]
add some fortran bindings, useful for bigdft

4 years agoEmit a warning when a link's latency is smaller than surf/precision.
Arnaud Giersch [Tue, 28 Jan 2020 13:33:40 +0000 (14:33 +0100)]
Emit a warning when a link's latency is smaller than surf/precision.

Contributes to FG issue simgrid/simgrid#46.

4 years agoKill obsolete TODO.
Arnaud Giersch [Tue, 28 Jan 2020 10:07:26 +0000 (11:07 +0100)]
Kill obsolete TODO.

4 years agoMerge branch 'master' into depencencies
Frederic Suter [Tue, 28 Jan 2020 11:21:47 +0000 (12:21 +0100)]
Merge branch 'master' into depencencies

4 years agokeep quiet for valgrind tests on ci to avoid false positives with tesh
Augustin Degomme [Tue, 28 Jan 2020 10:14:25 +0000 (11:14 +0100)]
keep quiet for valgrind tests on ci to avoid false positives with tesh