Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
4 years agoMore dead links.
Arnaud Giersch [Thu, 20 Jun 2019 14:45:38 +0000 (16:45 +0200)]
More dead links.

4 years agoFix remaining links to pls_ns3.
Arnaud Giersch [Sat, 15 Jun 2019 21:09:43 +0000 (23:09 +0200)]
Fix remaining links to pls_ns3.

4 years agoMerge branch 'master' of framagit.org:simgrid/simgrid
Loic Guegan [Wed, 19 Jun 2019 14:37:18 +0000 (16:37 +0200)]
Merge branch 'master' of framagit.org:simgrid/simgrid

4 years agolmm tests:
Loic Guegan [Wed, 19 Jun 2019 14:36:32 +0000 (16:36 +0200)]
lmm tests:
    - Move unit tests to the right place
    - Simplify test cases
    - Improve documentation

4 years agoMerge branch 'tesh-keep-all-proc-output-on-unexpected-cmd-result'
Millian Poquet [Wed, 19 Jun 2019 12:53:36 +0000 (14:53 +0200)]
Merge branch 'tesh-keep-all-proc-output-on-unexpected-cmd-result'

- MR https://framagit.org/simgrid/simgrid/merge_requests/11
- Fixes https://framagit.org/simgrid/simgrid/issues/25

4 years ago[tesh] write cmd output with 1 print()
Millian Poquet [Mon, 17 Jun 2019 16:34:48 +0000 (18:34 +0200)]
[tesh] write cmd output with 1 print()

This is to prevent printing collisions between threads.

4 years ago[tesh] bad cmd result: abort -> store retcode
Millian Poquet [Mon, 17 Jun 2019 16:04:06 +0000 (18:04 +0200)]
[tesh] bad cmd result: abort -> store retcode

4 years agolmm_test: simplify the 2 first tests
Martin Quinson [Tue, 18 Jun 2019 12:03:53 +0000 (14:03 +0200)]
lmm_test: simplify the 2 first tests

4 years agodefaults values to lmm::System::variable_new
Martin Quinson [Tue, 18 Jun 2019 12:03:16 +0000 (14:03 +0200)]
defaults values to lmm::System::variable_new

4 years agoVarious doc fixups
Martin Quinson [Mon, 17 Jun 2019 13:18:35 +0000 (15:18 +0200)]
Various doc fixups

- fix a borken link
- further ns-3 cosmetics
- fix RST formating in javadoc
- Remove dead functions from MSG doc
- Some VM "functions" are implemented as preprocessor defines

Why fixing it now? Because I have other things to do, of course.

4 years agolmm testing: Add test expectations
Loic Guegan [Mon, 17 Jun 2019 08:08:17 +0000 (10:08 +0200)]
lmm testing: Add test expectations

4 years agoFix my cosmetics around ns-3
Martin Quinson [Sun, 16 Jun 2019 23:44:31 +0000 (01:44 +0200)]
Fix my cosmetics around ns-3

- cmake spits the string that project_description.sh is expecting
- Actually it works with v3.22 since that's what is installed on one
  of our slaves (which broke when I bumped the min version for no reason)

4 years ago[doc] various doc small improvements
Martin Quinson [Sun, 16 Jun 2019 11:53:41 +0000 (13:53 +0200)]
[doc] various doc small improvements

4 years agodoc: port a placeholder to the new doc to fix a borken link
Martin Quinson [Sat, 15 Jun 2019 22:42:20 +0000 (00:42 +0200)]
doc: port a placeholder to the new doc to fix a borken link

4 years agocut some content of the old doc that was converted
Martin Quinson [Sat, 15 Jun 2019 22:05:27 +0000 (00:05 +0200)]
cut some content of the old doc that was converted

And improve a bit the corresponding bits in the new doc.

4 years agoCosmetics around ns-3
Martin Quinson [Sat, 15 Jun 2019 21:13:41 +0000 (23:13 +0200)]
Cosmetics around ns-3

This is why I don't convert the rest of the doc. Each time I start an
easy task in this area, I get swamped in cleanups with no end.

4 years agosonar: ignore more issues, hide commented code, add 'explicit'
Martin Quinson [Sat, 15 Jun 2019 20:24:03 +0000 (22:24 +0200)]
sonar: ignore more issues, hide commented code, add 'explicit'

4 years agosanitize our detection of pybind11
Martin Quinson [Sat, 15 Jun 2019 19:26:03 +0000 (21:26 +0200)]
sanitize our detection of pybind11

For some reason, our modified version of pybind11Config.cmake was not
included in the archive. We use it to ensure that the error message is
human friendly when compiling on a machine where pybind is not
installed.

For some other reason, FindPythonLibsNew.cmake was still in our git. I
tried to pack it in simgrid at some point to achieve the above
objective, but it proved to be a bad idea. I removed the other cmake
helping file of pybind11 but it seems I forgot this one. Fixed now.

4 years agodont copy the old doc in the tarball, even if it still exists on disk
Martin Quinson [Sat, 15 Jun 2019 19:20:04 +0000 (21:20 +0200)]
dont copy the old doc in the tarball, even if it still exists on disk

4 years agoconvert the doc of ns-3 to the new formalism
Martin Quinson [Sat, 15 Jun 2019 19:17:56 +0000 (21:17 +0200)]
convert the doc of ns-3 to the new formalism

Fix https://framagit.org/simgrid/simgrid/issues/17

4 years agolittle tiny fix toward doc homogeneity
Martin Quinson [Fri, 14 Jun 2019 17:36:37 +0000 (19:36 +0200)]
little tiny fix toward doc homogeneity

4 years agoPlug memory leaks.
Arnaud Giersch [Fri, 14 Jun 2019 20:21:16 +0000 (22:21 +0200)]
Plug memory leaks.

4 years agoAdd method to free all variables at once.
Arnaud Giersch [Fri, 14 Jun 2019 20:21:00 +0000 (22:21 +0200)]
Add method to free all variables at once.

4 years agoThis void* for Constraint::id_ is a Resource*.
Arnaud Giersch [Fri, 14 Jun 2019 13:29:18 +0000 (15:29 +0200)]
This void* for Constraint::id_ is a Resource*.

4 years agoFix null pointer dereference.
Arnaud Giersch [Fri, 14 Jun 2019 13:24:22 +0000 (15:24 +0200)]
Fix null pointer dereference.

4 years agokill dead code
Martin Quinson [Fri, 14 Jun 2019 13:15:58 +0000 (15:15 +0200)]
kill dead code

4 years agotiny doc improvements
Martin Quinson [Thu, 13 Jun 2019 21:53:43 +0000 (23:53 +0200)]
tiny doc improvements

4 years agoMerge remote-tracking branch 'github/master'
Arnaud Giersch [Fri, 14 Jun 2019 09:04:43 +0000 (11:04 +0200)]
Merge remote-tracking branch 'github/master'

4 years agoMerge branch 'tesh-fix-background-kill' into 'master'
Martin Quinson [Thu, 13 Jun 2019 19:01:44 +0000 (21:01 +0200)]
Merge branch 'tesh-fix-background-kill' into 'master'

tesh: fix kill of background processes

Closes #24

See merge request simgrid/simgrid!10

4 years ago[tesh] global pgid: unique value -> list
Millian Poquet [Thu, 13 Jun 2019 18:03:15 +0000 (20:03 +0200)]
[tesh] global pgid: unique value -> list

This caused the unique value to be overridden for background processes,
leading to a future problem on timeout/signal caught by tesh.

4 years ago[tesh] setsid -> setpgid(0,0)
Millian Poquet [Thu, 13 Jun 2019 17:52:34 +0000 (19:52 +0200)]
[tesh] setsid -> setpgid(0,0)

As the cleanup function is based on process groups and not session ids,
creating a process group rather than a session seems more adequate.

Info: http://www.andy-pearce.com/blog/posts/2013/Aug/process-groups-and-sessions/

4 years agoMerge branch 'tesh-check-output-on-timeout' into 'master'
Augustin Degomme [Thu, 13 Jun 2019 17:44:53 +0000 (19:44 +0200)]
Merge branch 'tesh-check-output-on-timeout' into 'master'

[tesh] check output on timeout

Closes #23

See merge request simgrid/simgrid!9

4 years ago[tesh] check output on timeout
Millian Poquet [Thu, 13 Jun 2019 15:39:11 +0000 (17:39 +0200)]
[tesh] check output on timeout

Rationale: Help users debug why the process got a timeout.

Fixes https://framagit.org/simgrid/simgrid/issues/23

4 years agolmm testing:
Loic Guegan [Wed, 12 Jun 2019 14:29:18 +0000 (16:29 +0200)]
lmm testing:
    - Refactoring
    - Add tests for FATPIPE lmm systems

4 years agolmm testing: Clean code
Loic Guegan [Wed, 12 Jun 2019 13:02:57 +0000 (15:02 +0200)]
lmm testing: Clean code

4 years agocosmetics in cmake error messages
Martin Quinson [Tue, 11 Jun 2019 20:45:22 +0000 (22:45 +0200)]
cosmetics in cmake error messages

4 years agoMC: cosmetics
Martin Quinson [Tue, 11 Jun 2019 20:43:26 +0000 (22:43 +0200)]
MC: cosmetics

4 years agofurther simplify the MC initialization
Martin Quinson [Tue, 11 Jun 2019 20:18:45 +0000 (22:18 +0200)]
further simplify the MC initialization

4 years agomc: don't catch exceptions we cannot deal with
Martin Quinson [Tue, 11 Jun 2019 19:56:37 +0000 (21:56 +0200)]
mc: don't catch exceptions we cannot deal with

+ cosmetics using xbt_assert to improve coverage

4 years agobugfix++
Martin Quinson [Tue, 11 Jun 2019 13:17:31 +0000 (15:17 +0200)]
bugfix++

4 years agodoc: Fix Debian installation instruction
Martin Quinson [Tue, 11 Jun 2019 13:03:50 +0000 (15:03 +0200)]
doc: Fix Debian installation instruction

This fixes FG#22.

4 years agolmm testing: Correct maxmin precision
Loic Guegan [Tue, 11 Jun 2019 12:27:36 +0000 (14:27 +0200)]
lmm testing: Correct maxmin precision

4 years agoExtends lmm tests
Loic Guegan [Tue, 11 Jun 2019 10:24:08 +0000 (12:24 +0200)]
Extends lmm tests

4 years agoLMM Testing:
Loic Guegan [Fri, 7 Jun 2019 12:09:47 +0000 (14:09 +0200)]
LMM Testing:
    - Refactoring
    - Add lmm_basic.cpp to the compilation chain

4 years agoStart Testing LMM
Loic Guegan [Thu, 6 Jun 2019 14:24:24 +0000 (16:24 +0200)]
Start Testing LMM

4 years agotesh: do return 0 when calling with --help
Martin Quinson [Tue, 11 Jun 2019 06:12:21 +0000 (08:12 +0200)]
tesh: do return 0 when calling with --help

I'm not sure why we had the previous construct, but everything seems
to work nicely with this new form, that is both simpler and in line
with all tutorials on argparse.py

This fixes FG#20.

4 years agocode simplification in MC start sequence
Martin Quinson [Mon, 10 Jun 2019 20:54:41 +0000 (22:54 +0200)]
code simplification in MC start sequence

4 years agocleanups in the debug config items
Martin Quinson [Sun, 9 Jun 2019 21:43:48 +0000 (23:43 +0200)]
cleanups in the debug config items

4 years agosonar: overriding functions should not return a subclass
Martin Quinson [Sat, 8 Jun 2019 06:47:57 +0000 (08:47 +0200)]
sonar: overriding functions should not return a subclass

4 years agoRemove a useless FIXME
Martin Quinson [Sat, 8 Jun 2019 06:36:54 +0000 (08:36 +0200)]
Remove a useless FIXME

We will not improve the existing Java bindings to enforce separation
between submodules of these bindings. We may redo them completely
using an automated generator, but not fiddle with the manual version.

4 years agocmake: more informative error message
Martin Quinson [Fri, 7 Jun 2019 08:27:46 +0000 (10:27 +0200)]
cmake: more informative error message

4 years agowe need a recent version of pybind11
Martin Quinson [Fri, 7 Jun 2019 08:20:56 +0000 (10:20 +0200)]
we need a recent version of pybind11

4 years agocmake: Try harder to detect pybind11 when it's there and survive when not
Martin Quinson [Fri, 7 Jun 2019 06:06:18 +0000 (08:06 +0200)]
cmake: Try harder to detect pybind11 when it's there and survive when not

This removes some cmake files that are internal to pybind11, because
on ubuntu-lts, there were a mismatch where it was taking the
system pybind11Config but the version of pybind11Tools that we
provide. The (older) system file was using a cmake function that is
not provided anymore by our recent pybind11Tools.

After this change, our pybind11Config is the upstream-provided one to
the exception that it survives to the absence of pybind11Tools (that
we don't provide). So two cases remain:

- our modified pybind11Config finds a usable pybind11Tools. This must
  be a system-wide pybind11Tools, meaning that pybin11 is installed and
  usable.
- our modified pybind11Config does not find any pybind11Tools. Don't
  try to use pybind11, but keep compiling SimGrid.

4 years agoCosmetics
Martin Quinson [Thu, 6 Jun 2019 22:27:27 +0000 (00:27 +0200)]
Cosmetics

4 years agoUpdate sonar-project.properties to ignore MPI quirks
Augustin Degomme [Thu, 6 Jun 2019 22:39:29 +0000 (00:39 +0200)]
Update sonar-project.properties to ignore MPI quirks

4 years agoremove an old windows cruft
Martin Quinson [Thu, 6 Jun 2019 22:25:36 +0000 (00:25 +0200)]
remove an old windows cruft

4 years agoImprove how we search for pybind11
Martin Quinson [Thu, 6 Jun 2019 21:43:22 +0000 (23:43 +0200)]
Improve how we search for pybind11

Include the searching modules in our tree. I am not absolutely
convinced that this is the right approach (we are dupplicating their
code, we'll have to maintain it), but the error message is rather
brutal without it, and plus, the result of "pip install pybind11" is
not enough without it.

4 years agoback to unstable work
Martin Quinson [Thu, 6 Jun 2019 14:16:43 +0000 (16:16 +0200)]
back to unstable work

4 years agoMerge branch 'stable'
Martin Quinson [Thu, 6 Jun 2019 14:08:38 +0000 (16:08 +0200)]
Merge branch 'stable'

4 years agofixups in the releasing process
Martin Quinson [Thu, 6 Jun 2019 14:07:54 +0000 (16:07 +0200)]
fixups in the releasing process

4 years agogitlab-ci: use release as a testing script to reduce building time
Martin Quinson [Thu, 6 Jun 2019 13:41:25 +0000 (15:41 +0200)]
gitlab-ci: use release as a testing script to reduce building time

4 years agoJenkins host name changed since last dot release
Martin Quinson [Thu, 6 Jun 2019 13:38:16 +0000 (15:38 +0200)]
Jenkins host name changed since last dot release

4 years agoprepare the release of 3.22.4 v3.22.4
Martin Quinson [Thu, 6 Jun 2019 12:32:47 +0000 (14:32 +0200)]
prepare the release of 3.22.4

4 years agokill some remaining bits that tested lmm::lagrange
Martin Quinson [Thu, 6 Jun 2019 07:20:46 +0000 (09:20 +0200)]
kill some remaining bits that tested lmm::lagrange

4 years agoLMM: rename sharing_weight into sharing_penalty for sake of clarity
Martin Quinson [Wed, 5 Jun 2019 15:07:28 +0000 (17:07 +0200)]
LMM: rename sharing_weight into sharing_penalty for sake of clarity

This is similar to what just happened in surf yesterday. It allows:
  -   cnst.usage_ += elem.consumption_weight / elem.variable->sharing_weight_;
  +   cnst.usage_ += elem.consumption_weight / elem.variable->sharing_penalty_;
which seems far more understandable to me.

I'm glad I finally got the will to do this boooooring cleanup, after
hours of being puzzled whether a sharing_weight is actually an
advantage or a drawback for the action in the LMM. The answer was "it
depends on whether you are in app, surf or LMM". Now, you know that
having a high priority is the opposite of having a high penalty, and
things should be less intricate.

4 years agoBuild nice python source packages
Martin Quinson [Wed, 5 Jun 2019 09:57:27 +0000 (11:57 +0200)]
Build nice python source packages

This should be enough to solve framagit#6.

4 years agoRename cmake option 'minimal_java' into 'minimal-bindings'
Martin Quinson [Wed, 5 Jun 2019 09:55:08 +0000 (11:55 +0200)]
Rename cmake option 'minimal_java' into 'minimal-bindings'

I will use it for python too.

4 years agoci: don't check external links because of the false positives
Martin Quinson [Tue, 4 Jun 2019 16:25:05 +0000 (18:25 +0200)]
ci: don't check external links because of the false positives

4 years agobuilding the pages needs to rebuild python beforehand
Martin Quinson [Tue, 4 Jun 2019 16:20:54 +0000 (18:20 +0200)]
building the pages needs to rebuild python beforehand

4 years agoRename Action::priority into Action::sharing_penalty in surf as it should be
Martin Quinson [Tue, 4 Jun 2019 16:09:38 +0000 (18:09 +0200)]
Rename Action::priority into Action::sharing_penalty in surf as it should be

This commit contains the following at the s4u -> surf boundary:
  -        .set_priority(1. / priority_)
  +        .set_sharing_penalty(1. / priority_)
The old version was just sick.

This should be further propagated down into LMM, where the
sharing_penalty is still named "sharing_weight". Not a helpful name
for the poor souls who didn't wrote an hdr on this topic :)

4 years agobug fixed++
Martin Quinson [Tue, 4 Jun 2019 14:21:24 +0000 (16:21 +0200)]
bug fixed++

4 years agoHide the destructor of resource::Model
Martin Quinson [Tue, 4 Jun 2019 09:57:18 +0000 (11:57 +0200)]
Hide the destructor of resource::Model

If "~Model() = default" is in the header file, the compilation fails
with the following message:

 /usr/include/simgrid/kernel/resource/Model.hpp:35:11:   required from here
 /usr/include/c++/6/bits/unique_ptr.h:74:22: error: invalid application of 'sizeof' to incomplete type 'simgrid::kernel::lmm::System'
   static_assert(sizeof(_Tp)>0,

That's too bad because simgrid::kernel::lmm::System is not a public
type. This fails in particular when compiling simgrid-FMI.

Hiding the destructor in the cpp as done with this commit works better
because lmm::System is visible from Model.cpp

4 years agosonar: kill unused parameter
Martin Quinson [Tue, 4 Jun 2019 08:18:00 +0000 (10:18 +0200)]
sonar: kill unused parameter

4 years agoMC: kill an unused field and a useless method
Martin Quinson [Mon, 3 Jun 2019 23:41:47 +0000 (01:41 +0200)]
MC: kill an unused field and a useless method

4 years agoMC: kill an unused field
Martin Quinson [Mon, 3 Jun 2019 23:39:15 +0000 (01:39 +0200)]
MC: kill an unused field

4 years agoSimplify mc::Region::read()
Martin Quinson [Mon, 3 Jun 2019 23:10:37 +0000 (01:10 +0200)]
Simplify mc::Region::read()

- Inline a function, and simplify the flow now that we only have Chunked regions
- Make it a method (it was a C function)

4 years agoCleanups in class mc::Region
Martin Quinson [Mon, 3 Jun 2019 22:38:19 +0000 (00:38 +0200)]
Cleanups in class mc::Region

- former name was mc::RegionSnapshot
- please sonar: mark fields private, and kill copy constructor
- mc::Region cannot be of type Unknown anymore
- and other cleanups

4 years agolmm: cosmetics in documentation (reduce redundency)
Martin Quinson [Mon, 3 Jun 2019 13:33:34 +0000 (15:33 +0200)]
lmm: cosmetics in documentation (reduce redundency)

4 years agofinish the removal of lagrange-related things
Martin Quinson [Mon, 3 Jun 2019 13:30:48 +0000 (15:30 +0200)]
finish the removal of lagrange-related things

4 years agolmm: rename some fields for clarity
Martin Quinson [Mon, 3 Jun 2019 13:17:44 +0000 (15:17 +0200)]
lmm: rename some fields for clarity

4 years agoRemove the lagrange-based models
Martin Quinson [Mon, 3 Jun 2019 13:02:38 +0000 (15:02 +0200)]
Remove the lagrange-based models

Sorry Pedro, but this simplification really makes me happy :)

4 years agolmm::{Variable,Constraint}: Obey our coding conventions wrt fields' names
Martin Quinson [Mon, 3 Jun 2019 12:31:15 +0000 (14:31 +0200)]
lmm::{Variable,Constraint}: Obey our coding conventions wrt fields' names

4 years agoAvoid a >>unused parameter ‘host’<< error on user code
Martin Quinson [Sun, 2 Jun 2019 19:11:46 +0000 (21:11 +0200)]
Avoid a >>unused parameter ‘host’<< error on user code

4 years agoReduce code duplication.
Arnaud Giersch [Mon, 3 Jun 2019 11:57:27 +0000 (13:57 +0200)]
Reduce code duplication.

4 years agoCosmetics.
Arnaud Giersch [Mon, 3 Jun 2019 11:39:09 +0000 (13:39 +0200)]
Cosmetics.

4 years agoDon't leave an empty catch block.
Arnaud Giersch [Mon, 3 Jun 2019 11:37:07 +0000 (13:37 +0200)]
Don't leave an empty catch block.

4 years agoUnused parameters argc/argv.
Arnaud Giersch [Mon, 3 Jun 2019 09:44:08 +0000 (11:44 +0200)]
Unused parameters argc/argv.

4 years ago[sonar] Replace private inheritance with a private member.
Arnaud Giersch [Mon, 3 Jun 2019 08:53:15 +0000 (10:53 +0200)]
[sonar] Replace private inheritance with a private member.

4 years agoAdd gemm.c to sonar exclusions, this code is not ours.
Arnaud Giersch [Mon, 3 Jun 2019 08:42:15 +0000 (10:42 +0200)]
Add gemm.c to sonar exclusions, this code is not ours.

4 years agofix MC builds on gcc
Martin Quinson [Sat, 1 Jun 2019 11:46:21 +0000 (13:46 +0200)]
fix MC builds on gcc

4 years agofix lua builds
Martin Quinson [Sat, 1 Jun 2019 10:45:17 +0000 (12:45 +0200)]
fix lua builds

4 years agoMC: rename some files
Martin Quinson [Fri, 31 May 2019 21:58:11 +0000 (23:58 +0200)]
MC: rename some files

4 years agoMC: finish emptying an old C file
Martin Quinson [Fri, 31 May 2019 21:47:30 +0000 (23:47 +0200)]
MC: finish emptying an old C file

Its content was dispatched to classes (that's still a bit cheatty in
inspect/ but that's in progress)

4 years agoMC: inline a function that is now trivial
Martin Quinson [Fri, 31 May 2019 21:31:59 +0000 (23:31 +0200)]
MC: inline a function that is now trivial

4 years agorename a file
Martin Quinson [Fri, 31 May 2019 21:08:09 +0000 (23:08 +0200)]
rename a file

4 years agofix build on stable debian
Martin Quinson [Fri, 31 May 2019 13:38:09 +0000 (15:38 +0200)]
fix build on stable debian

4 years agofix make dist, stupid f*** bummer
Martin Quinson [Fri, 31 May 2019 13:22:21 +0000 (15:22 +0200)]
fix make dist, stupid f*** bummer

4 years agopoint to the right sonar repo
Martin Quinson [Fri, 31 May 2019 13:15:04 +0000 (15:15 +0200)]
point to the right sonar repo

4 years agocleanup after the split of kernel/resource/profile into several classes
Martin Quinson [Fri, 31 May 2019 13:11:22 +0000 (15:11 +0200)]
cleanup after the split of kernel/resource/profile into several classes

4 years agoMC::Region: Also remove the permanent_addr thingy
Martin Quinson [Fri, 31 May 2019 10:36:16 +0000 (12:36 +0200)]
MC::Region: Also remove the permanent_addr thingy

That was needed for the MMAP privatization of SMPI, which is gone.