Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
2 years agoFix null pointer dereference.
Arnaud Giersch [Fri, 14 Jun 2019 13:24:22 +0000 (15:24 +0200)]
Fix null pointer dereference.

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

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

2 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'

2 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

2 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.

2 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/

2 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

2 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

2 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

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

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

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

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

2 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

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

2 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.

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

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

2 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

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

2 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.

2 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

2 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

2 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

2 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.

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

2 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

2 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.

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

2 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

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

2 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.

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

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

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

2 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

2 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

2 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

2 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

2 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.

2 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.

2 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.

2 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

2 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

2 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 :)

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

2 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

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

2 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

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

2 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)

2 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

2 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)

2 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

2 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

2 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 :)

2 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

2 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

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

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

2 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.

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

2 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.

2 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.

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

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

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

2 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)

2 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

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

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

2 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

2 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

2 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

2 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.

2 years agomc: cosmetics
Martin Quinson [Fri, 31 May 2019 10:22:56 +0000 (12:22 +0200)]
mc: cosmetics

2 years agoMerge branch 'tracemgrsplit' into 'master'
Martin Quinson [Fri, 31 May 2019 12:31:12 +0000 (14:31 +0200)]
Merge branch 'tracemgrsplit' into 'master'

Splitting trace_mgr into several files, one per class

See merge request simgrid/simgrid!4

2 years agofix make dist
Martin Quinson [Thu, 30 May 2019 14:47:33 +0000 (16:47 +0200)]
fix make dist

2 years agofix gitlab-ci.yml
Martin Quinson [Thu, 30 May 2019 14:45:33 +0000 (16:45 +0200)]
fix gitlab-ci.yml

2 years agoinline a function
Martin Quinson [Thu, 30 May 2019 14:43:01 +0000 (16:43 +0200)]
inline a function

2 years agokill the RegionSparse subclass now that there is no alternative
Martin Quinson [Thu, 30 May 2019 14:06:25 +0000 (16:06 +0200)]
kill the RegionSparse subclass now that there is no alternative

2 years agoMC: cosmetics (fight the mc_model_checker singleton)
Martin Quinson [Thu, 30 May 2019 10:45:55 +0000 (12:45 +0200)]
MC: cosmetics (fight the mc_model_checker singleton)

2 years agoMC: remove support for flat storage of regions
Martin Quinson [Thu, 30 May 2019 10:32:28 +0000 (12:32 +0200)]
MC: remove support for flat storage of regions

This is another move to unclutter the MC source code. The road is
still long, but I'm progressing.

2 years agoci: don't rebuild specifically to build and linkcheck the doc
Martin Quinson [Thu, 30 May 2019 10:31:23 +0000 (12:31 +0200)]
ci: don't rebuild specifically to build and linkcheck the doc

2 years agoMC::remote: snake case
Martin Quinson [Thu, 30 May 2019 09:38:17 +0000 (11:38 +0200)]
MC::remote: snake case

2 years agomc: Also remove the process_index
Martin Quinson [Wed, 29 May 2019 22:12:08 +0000 (00:12 +0200)]
mc: Also remove the process_index

This was used to switch between MMAP private segments

2 years agoKill the support for privatized SMPI in MC mode
Martin Quinson [Wed, 29 May 2019 14:51:11 +0000 (16:51 +0200)]
Kill the support for privatized SMPI in MC mode

2 years agoUpdate sonar-project.properties key
Augustin Degomme [Wed, 29 May 2019 12:23:06 +0000 (14:23 +0200)]
Update sonar-project.properties key

2 years agosonar: move the simgrid project in the simgrid organization
Martin Quinson [Wed, 29 May 2019 09:26:52 +0000 (11:26 +0200)]
sonar: move the simgrid project in the simgrid organization

2 years agoDon't pretend we can move a parallel exec
Martin Quinson [Tue, 28 May 2019 15:45:16 +0000 (17:45 +0200)]
Don't pretend we can move a parallel exec

2 years agomc: snake_case the checkers
Martin Quinson [Tue, 28 May 2019 09:23:03 +0000 (11:23 +0200)]
mc: snake_case the checkers

2 years agomc: snake_case a class
Martin Quinson [Tue, 28 May 2019 08:34:49 +0000 (10:34 +0200)]
mc: snake_case a class

2 years agomc: change 3 static functions into private methods
Martin Quinson [Mon, 27 May 2019 23:18:24 +0000 (01:18 +0200)]
mc: change 3 static functions into private methods

And inline a fourth one

2 years agomc: move code around in the hope that it will sort itself while doing so
Martin Quinson [Mon, 27 May 2019 23:11:00 +0000 (01:11 +0200)]
mc: move code around in the hope that it will sort itself while doing so

2 years agoignore java from coverage
Martin Quinson [Mon, 27 May 2019 22:41:41 +0000 (00:41 +0200)]
ignore java from coverage

2 years agoMissing include (HAVE_MREMAP).
Arnaud Giersch [Tue, 28 May 2019 08:53:45 +0000 (10:53 +0200)]
Missing include (HAVE_MREMAP).

2 years agomc: tricks to improve the coverage
Martin Quinson [Sun, 26 May 2019 22:34:10 +0000 (00:34 +0200)]
mc: tricks to improve the coverage

- change "if (..) xbt_die" into xbt_assert(..)
- kill dead code

2 years agofix non-MC builds when libevent is not found
Martin Quinson [Sun, 26 May 2019 21:36:28 +0000 (23:36 +0200)]
fix non-MC builds when libevent is not found

2 years agofurther tidy the includes in MC
Martin Quinson [Sun, 26 May 2019 21:17:00 +0000 (23:17 +0200)]
further tidy the includes in MC