Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
4 years agoMissing include.
Arnaud Giersch [Thu, 5 Dec 2019 09:32:33 +0000 (10:32 +0100)]
Missing include.

4 years agofix build with MC + no SMPI
Augustin Degomme [Thu, 5 Dec 2019 06:41:46 +0000 (07:41 +0100)]
fix build with MC + no SMPI

4 years agoMerge branch 'doc' into 'master'
Martin Quinson [Wed, 4 Dec 2019 23:57:10 +0000 (00:57 +0100)]
Merge branch 'doc' into 'master'

Fix link in Mutex doc

See merge request simgrid/simgrid!25

4 years agoremove debug stuff added by mistake...
Augustin Degomme [Wed, 4 Dec 2019 21:47:01 +0000 (22:47 +0100)]
remove debug stuff added by mistake...

4 years ago...
Augustin Degomme [Wed, 4 Dec 2019 21:18:23 +0000 (22:18 +0100)]
...

4 years agomanifest update
Augustin Degomme [Wed, 4 Dec 2019 21:09:25 +0000 (22:09 +0100)]
manifest update

4 years agoneed to initialize here also for osx and co.
Augustin Degomme [Wed, 4 Dec 2019 21:04:00 +0000 (22:04 +0100)]
need to initialize here also for osx and co.

4 years agoSomehow OSX "lost" aligned_alloc recently ?
Augustin Degomme [Wed, 4 Dec 2019 20:16:28 +0000 (21:16 +0100)]
Somehow OSX "lost" aligned_alloc recently ?
But it's quite useless here anyway, so don't bother.

4 years agohelp mc initialize smpi options.
Augustin Degomme [Wed, 4 Dec 2019 20:05:52 +0000 (21:05 +0100)]
help mc initialize smpi options.

4 years agofix MC build
Augustin Degomme [Wed, 4 Dec 2019 18:04:51 +0000 (19:04 +0100)]
fix MC build

4 years agoleak--
Augustin Degomme [Wed, 4 Dec 2019 17:56:51 +0000 (18:56 +0100)]
leak--

4 years agorequalify tesh as one message changed category
Augustin Degomme [Wed, 4 Dec 2019 17:56:46 +0000 (18:56 +0100)]
requalify tesh as one message changed category

4 years agoMove SMPI config to smpi_config.cpp file.
Augustin Degomme [Wed, 4 Dec 2019 17:55:45 +0000 (18:55 +0100)]
Move SMPI config to smpi_config.cpp file.
Store values for most used values, which can be used millions of times.
In some tests I saw up to 5% of the time spent reading them.

4 years agoFix link in Mutex doc
Julien EMMANUEL [Wed, 4 Dec 2019 16:26:17 +0000 (17:26 +0100)]
Fix link in Mutex doc

4 years agoFix issue with copy avoidance, which was merely working by accident in most cases.
Augustin Degomme [Mon, 2 Dec 2019 15:05:21 +0000 (16:05 +0100)]
Fix issue with copy avoidance, which was merely working by accident in most cases.
That was causing HPL to loop.

4 years agomore precise OS description for OpenIndiana.
Augustin Degomme [Thu, 28 Nov 2019 11:40:55 +0000 (12:40 +0100)]
more precise OS description for OpenIndiana.

4 years agoMerge branch 'master' into 'master'
Augustin Degomme [Mon, 2 Dec 2019 12:39:45 +0000 (13:39 +0100)]
Merge branch 'master' into 'master'

Master

See merge request simgrid/simgrid!23

4 years agoClean up and use of vector for cleaner allocation
Fabien Chaix [Mon, 2 Dec 2019 12:18:44 +0000 (14:18 +0200)]
Clean up and use of vector for cleaner allocation

4 years agooops, this bit wasn't meant to be reverted.
Augustin Degomme [Sun, 1 Dec 2019 21:22:27 +0000 (22:22 +0100)]
oops, this bit wasn't meant to be reverted.

4 years agorename this macro.
Augustin Degomme [Sun, 1 Dec 2019 17:22:40 +0000 (18:22 +0100)]
rename this macro.
It's actually useful outside of sampi, to disable malloc override when it conflicts with other codes and is not needed.
Fors instance FFTW uses FFTW(malloc(x)) to actually call fftw_malloc, and our macro was then breaking compilation.

4 years agopartial revert of e16e0233
Augustin Degomme [Sun, 1 Dec 2019 14:28:28 +0000 (15:28 +0100)]
partial revert of e16e0233
These parenthesis are useful for use in macros, such as in HPL

4 years agoAvoid allocation inside lmm_solve
Fabien Chaix [Fri, 29 Nov 2019 12:53:37 +0000 (14:53 +0200)]
Avoid allocation inside lmm_solve

4 years agoAdd missing constant definitions for Fortran
Fabien Chaix [Fri, 29 Nov 2019 12:52:35 +0000 (14:52 +0200)]
Add missing constant definitions for Fortran

4 years agoMerge branch 'master' of https://framagit.org/simgrid/simgrid
Frederic Suter [Fri, 29 Nov 2019 11:09:19 +0000 (12:09 +0100)]
Merge branch 'master' of https://framagit.org/simgrid/simgrid

4 years agomaestro_process -> maestro_
Frederic Suter [Fri, 29 Nov 2019 10:18:28 +0000 (11:18 +0100)]
maestro_process -> maestro_

4 years agomake SIMIX_wake_processes a method of simix_global
Frederic Suter [Fri, 29 Nov 2019 09:56:44 +0000 (10:56 +0100)]
make SIMIX_wake_processes a method of simix_global

4 years ago1 a.m. lazy commit. Plenty of new libs appeared on our radar on fedora after an updat...
Augustin Degomme [Fri, 29 Nov 2019 00:10:50 +0000 (01:10 +0100)]
1 a.m. lazy commit. Plenty of new libs appeared on our radar on fedora after an update (elfutils ?)...
They have multiple ro segments, and their debuginfos are missing.

4 years ago2-8 is matched as a version number and stripped from libname
Augustin Degomme [Thu, 28 Nov 2019 22:29:23 +0000 (23:29 +0100)]
2-8 is matched as a version number and stripped from libname

4 years agocosmetics
Frederic Suter [Thu, 28 Nov 2019 17:29:11 +0000 (18:29 +0100)]
cosmetics

4 years agoMerge branch 'master' of https://framagit.org/simgrid/simgrid
Frederic Suter [Thu, 28 Nov 2019 16:48:31 +0000 (17:48 +0100)]
Merge branch 'master' of https://framagit.org/simgrid/simgrid

4 years agoImprove self (less SIMIX more kernel)
Frederic Suter [Thu, 28 Nov 2019 16:47:58 +0000 (17:47 +0100)]
Improve self (less SIMIX more kernel)

4 years agoMC: also ignore a library that has multiple read-only segments on fedora
Martin Quinson [Thu, 28 Nov 2019 16:29:08 +0000 (17:29 +0100)]
MC: also ignore a library that has multiple read-only segments on fedora

4 years agodepreacate SIMIX_process_on_exit
Frederic Suter [Thu, 28 Nov 2019 14:43:43 +0000 (15:43 +0100)]
depreacate SIMIX_process_on_exit

4 years agoAdd norelro to link flags (see FG #35).
Arnaud Giersch [Thu, 28 Nov 2019 14:29:11 +0000 (15:29 +0100)]
Add norelro to link flags (see FG #35).

4 years agoFix doubled semicolons.
Arnaud Giersch [Wed, 27 Nov 2019 08:46:51 +0000 (09:46 +0100)]
Fix doubled semicolons.

4 years agocosmetics (less SIMIX, more kernel)
Frederic Suter [Thu, 28 Nov 2019 14:24:07 +0000 (15:24 +0100)]
cosmetics (less SIMIX, more kernel)

4 years agoMerge branch 'master' of https://framagit.org/simgrid/simgrid
Frederic Suter [Thu, 28 Nov 2019 12:38:46 +0000 (13:38 +0100)]
Merge branch 'master' of https://framagit.org/simgrid/simgrid

4 years agoe_smx_state_t is now kernel::activity::State
Frederic Suter [Thu, 28 Nov 2019 12:35:19 +0000 (13:35 +0100)]
e_smx_state_t is now kernel::activity::State

4 years agoAdd a test for mpi_cart_sub based on the bug report by Jonathan Borne.
Augustin Degomme [Thu, 28 Nov 2019 09:32:19 +0000 (10:32 +0100)]
Add a test for mpi_cart_sub based on the bug report by Jonathan Borne.

4 years agoreplace ticks by version of python in project description when python is used for...
Augustin Degomme [Thu, 28 Nov 2019 09:31:33 +0000 (10:31 +0100)]
replace ticks by version of python in project description when python is used for simgrid.

4 years agoenhance shared tests to validate comms are skipped
Augustin Degomme [Thu, 28 Nov 2019 09:28:39 +0000 (10:28 +0100)]
enhance shared tests to validate comms are skipped

4 years agoTry to have a real mpi_cart_sub
Augustin Degomme [Thu, 28 Nov 2019 08:06:30 +0000 (09:06 +0100)]
Try to have a real mpi_cart_sub

4 years agouse by_name_or_null for links too
Frederic Suter [Wed, 27 Nov 2019 12:55:37 +0000 (13:55 +0100)]
use by_name_or_null for links too

4 years agofix asserts
Frederic Suter [Wed, 27 Nov 2019 12:36:51 +0000 (13:36 +0100)]
fix asserts

4 years agodon't know why this was still a struct
Frederic Suter [Wed, 27 Nov 2019 12:16:59 +0000 (13:16 +0100)]
don't know why this was still a struct

4 years agoAvoid copying data if it comes from/to a shared buffer, even internally.
Augustin Degomme [Tue, 26 Nov 2019 11:39:51 +0000 (12:39 +0100)]
Avoid copying data if it comes from/to a shared buffer, even internally.
Mainly useful for MPI_IN_PLACE collectives.

4 years agoIgnore copies in plain shared_mallocs.
Augustin Degomme [Tue, 26 Nov 2019 00:31:37 +0000 (01:31 +0100)]
Ignore copies in plain shared_mallocs.

4 years agoLame attempt to fix freebsd builds.
Arnaud Giersch [Sun, 24 Nov 2019 22:25:55 +0000 (23:25 +0100)]
Lame attempt to fix freebsd builds.

/usr/local/bin/ld: /usr/local/llvm-devel/lib/libomp.so: undefined reference to `kmp_set_thread_affinity_mask_initial'

4 years agoA single lookup is enough.
Arnaud Giersch [Sun, 24 Nov 2019 21:23:30 +0000 (22:23 +0100)]
A single lookup is enough.

4 years agoParentheses around macro parameters.
Arnaud Giersch [Fri, 22 Nov 2019 21:05:13 +0000 (22:05 +0100)]
Parentheses around macro parameters.

4 years agoInitialize allocated memory.
Arnaud Giersch [Fri, 22 Nov 2019 15:43:09 +0000 (16:43 +0100)]
Initialize allocated memory.

4 years agoMemory leak--
Arnaud Giersch [Fri, 22 Nov 2019 15:19:32 +0000 (16:19 +0100)]
Memory leak--

4 years agoUnused stuff.
Arnaud Giersch [Thu, 21 Nov 2019 09:38:04 +0000 (10:38 +0100)]
Unused stuff.

4 years agosmpi colls: use C++ containers instead of nul-terminted C vectors
Martin Quinson [Sat, 23 Nov 2019 17:15:08 +0000 (18:15 +0100)]
smpi colls: use C++ containers instead of nul-terminted C vectors

4 years agocosmetics
Martin Quinson [Sat, 23 Nov 2019 15:23:56 +0000 (16:23 +0100)]
cosmetics

4 years agodon't forget that calloc assigns 0 to the buffer
Augustin Degomme [Fri, 22 Nov 2019 14:10:07 +0000 (15:10 +0100)]
don't forget that calloc assigns 0 to the buffer

4 years agocosmetics : I activated -pedantic for a quick pass
Augustin Degomme [Fri, 22 Nov 2019 13:00:21 +0000 (14:00 +0100)]
cosmetics : I activated -pedantic for a quick pass
I decided to ignore errors related to printf %p which wants a void*-casted pointer
main changes are the removal of spurious ; in the code, and some forbidden dynamically sized arrays.

4 years agofix use after delete.
Augustin Degomme [Fri, 22 Nov 2019 11:07:18 +0000 (12:07 +0100)]
fix use after delete.

4 years agoadd calloc_intercept to avoid mistmatches.
Augustin Degomme [Fri, 22 Nov 2019 11:07:05 +0000 (12:07 +0100)]
add calloc_intercept to avoid mistmatches.

4 years agoMerge remote-tracking branch 'framagit/master'
Martin Quinson [Fri, 22 Nov 2019 06:35:12 +0000 (07:35 +0100)]
Merge remote-tracking branch 'framagit/master'

4 years agoexpend more macros in MPI collectives
Martin Quinson [Fri, 22 Nov 2019 06:01:19 +0000 (07:01 +0100)]
expend more macros in MPI collectives

4 years agouse catch2 way of doing this
Augustin Degomme [Thu, 21 Nov 2019 18:09:54 +0000 (19:09 +0100)]
use catch2 way of doing this

4 years agoAdd tolerance for floating point precision comparisons.
Augustin Degomme [Thu, 21 Nov 2019 16:16:00 +0000 (17:16 +0100)]
Add tolerance for floating point precision comparisons.
Fails on 32bits if equality is used.

4 years agoA change in cmake 3.16 makes this syntax necessary.
Augustin Degomme [Thu, 21 Nov 2019 14:55:29 +0000 (15:55 +0100)]
A change in cmake 3.16 makes this syntax necessary.
Let's see if old cmakes (and osx) allow this.
ref https://gitlab.kitware.com/cmake/cmake/issues/19747

4 years agoActually free the memory in these cases, should fix leaks and crashes on 32 bits.
Augustin Degomme [Thu, 21 Nov 2019 13:34:45 +0000 (14:34 +0100)]
Actually free the memory in these cases, should fix leaks and crashes on 32 bits.

4 years agoinclude smpi helpers definitions in smpi.h, to define smpi_shared_free again.
Augustin Degomme [Thu, 21 Nov 2019 13:33:57 +0000 (14:33 +0100)]
include smpi helpers definitions in smpi.h, to define smpi_shared_free again.

4 years agoKill now unused macros.
Arnaud Giersch [Wed, 20 Nov 2019 21:51:59 +0000 (22:51 +0100)]
Kill now unused macros.

4 years agoDefine simgrid::xbt::InitializationError (please Sonar).
Arnaud Giersch [Wed, 20 Nov 2019 14:23:34 +0000 (15:23 +0100)]
Define simgrid::xbt::InitializationError (please Sonar).

4 years agoCleanup around simgrid::ParseError.
Arnaud Giersch [Wed, 20 Nov 2019 13:49:26 +0000 (14:49 +0100)]
Cleanup around simgrid::ParseError.

4 years agoUpdate .mailmap.
Arnaud Giersch [Mon, 11 Nov 2019 13:47:24 +0000 (14:47 +0100)]
Update .mailmap.

4 years agornd: cosmetics to ease the implem
Martin Quinson [Wed, 20 Nov 2019 13:09:40 +0000 (14:09 +0100)]
rnd: cosmetics to ease the implem

4 years agoMerge branch 'xbt_random' into 'master'
Martin Quinson [Wed, 20 Nov 2019 12:18:21 +0000 (13:18 +0100)]
Merge branch 'xbt_random' into 'master'

Choice between ad-hoc and standard distributions implementations

See merge request simgrid/simgrid!21

4 years agoReverting the change to xbt_uniform_int
Yann Duplouy [Wed, 20 Nov 2019 10:37:44 +0000 (11:37 +0100)]
Reverting the change to xbt_uniform_int

4 years agoAdding unit tests for the standard library distributions
Yann Duplouy [Wed, 20 Nov 2019 10:29:59 +0000 (11:29 +0100)]
Adding unit tests for the standard library distributions

4 years agoUpdating tests results for dht-chord (due to change to uniform int)
Yann Duplouy [Wed, 20 Nov 2019 10:25:35 +0000 (11:25 +0100)]
Updating tests results for dht-chord (due to change to uniform int)

4 years agoModifying how uniform integer are generated
Yann Duplouy [Wed, 20 Nov 2019 10:25:16 +0000 (11:25 +0100)]
Modifying how uniform integer are generated

4 years agoIntroducing choice between the standard library and ad-hoc SimGrid distribution imple...
Yann Duplouy [Wed, 20 Nov 2019 09:52:42 +0000 (10:52 +0100)]
Introducing choice between the standard library and ad-hoc SimGrid distribution implementations.

4 years agoadd option "smpi/auto-shared-malloc-thresh"
Augustin Degomme [Tue, 19 Nov 2019 12:56:26 +0000 (13:56 +0100)]
add option "smpi/auto-shared-malloc-thresh"
This applies smpi_shared_malloc automatically to all allocations above a certain size.
Test based on the sample-shared one: malloc >= 8bytes is indeed shared, without using macros.

todo: calloc and co.

4 years agoplug a memleak on parse error :)
Martin Quinson [Tue, 19 Nov 2019 00:33:19 +0000 (01:33 +0100)]
plug a memleak on parse error :)

The most important fix ever!

4 years agodocument recent changes
Martin Quinson [Tue, 19 Nov 2019 00:27:14 +0000 (01:27 +0100)]
document recent changes

4 years agoInventive hack to get flex raising exceptions on parse error
Martin Quinson [Tue, 19 Nov 2019 00:15:21 +0000 (01:15 +0100)]
Inventive hack to get flex raising exceptions on parse error

The core of this (over 2500 lines) patch reads as follows:
-    fprintf(stderr, "%s\n", flexml_err_msg);
+    surf_parse_error(flexml_err_msg);

But the code we want to change is generated by Flex, so ... I have to
augment the perl script that rewrite some parts of the Flex result for
that purpose. Because yes, we do have such a perl script.

At the end, we need to regenerate the flex parser with the latest
version of Flex to apply this patch, resulting in that jumbo patch.

4 years agoalso throw an exception when asked to parse an inexisting file
Martin Quinson [Mon, 18 Nov 2019 23:41:09 +0000 (00:41 +0100)]
also throw an exception when asked to parse an inexisting file

4 years agosmpi: expend a bunch of macros so that the functions' prototypes become accessible...
Martin Quinson [Mon, 18 Nov 2019 23:32:21 +0000 (00:32 +0100)]
smpi: expend a bunch of macros so that the functions' prototypes become accessible to my IDE

4 years agoChange smpi::Colls static class into a namespace of functions
Martin Quinson [Mon, 18 Nov 2019 14:57:30 +0000 (15:57 +0100)]
Change smpi::Colls static class into a namespace of functions

4 years agoMerge branch 'xbt_random' into 'master'
Martin Quinson [Tue, 19 Nov 2019 00:13:06 +0000 (01:13 +0100)]
Merge branch 'xbt_random' into 'master'

A module for RNG calls

See merge request simgrid/simgrid!20

4 years agoMerge branch 'master' of https://framagit.org/simgrid/simgrid
Frederic Suter [Mon, 18 Nov 2019 18:45:36 +0000 (19:45 +0100)]
Merge branch 'master' of https://framagit.org/simgrid/simgrid

4 years agopower is speed
Frederic Suter [Mon, 18 Nov 2019 16:35:39 +0000 (17:35 +0100)]
power is speed

4 years agoAssertion to force maximum value to be greater or equal to minimum in uniform int
Yann Duplouy [Mon, 18 Nov 2019 12:58:45 +0000 (13:58 +0100)]
Assertion to force maximum value to be greater or equal to minimum in uniform int

4 years agofix fortran + ARM 64 bits.
Augustin Degomme [Mon, 18 Nov 2019 10:39:57 +0000 (11:39 +0100)]
fix fortran + ARM 64 bits.
I would like to get rid of these lists of architectures, and rely on cmake sizeof_voidp ... but this would mean relying on internal_config from smpi.h, and this is bad practice in simgrid :p Any idea ? Feel free to change it.
Anyway I changed the one in a cpp file that handles 99% of the cases, le .h is there for some ugly corner cases... This should not trigger too many errors in case of a new 64bits architecture popping.

4 years agoEnergy plugins now throws std::logic_error when not properly inited before use
Martin Quinson [Mon, 18 Nov 2019 05:55:28 +0000 (06:55 +0100)]
Energy plugins now throws std::logic_error when not properly inited before use

4 years agoparsing: less asserts, more exception raising
Martin Quinson [Mon, 18 Nov 2019 05:25:09 +0000 (06:25 +0100)]
parsing: less asserts, more exception raising

4 years agohandle flexer errors within the parsing module
Martin Quinson [Mon, 18 Nov 2019 05:13:09 +0000 (06:13 +0100)]
handle flexer errors within the parsing module

Raise the exception ourselves instead of leaking an error code that
must be converted into an exception by our caller.

4 years agoParse errors now raise a simgrid::ParseError that you may want to catch
Martin Quinson [Mon, 18 Nov 2019 05:05:08 +0000 (06:05 +0100)]
Parse errors now raise a simgrid::ParseError that you may want to catch

4 years agoa bit of cleanup, could go further but not now
Frederic Suter [Sun, 17 Nov 2019 23:49:28 +0000 (00:49 +0100)]
a bit of cleanup, could go further but not now

4 years agoreduce code dupplication
Martin Quinson [Sun, 17 Nov 2019 23:03:36 +0000 (00:03 +0100)]
reduce code dupplication

4 years agosmpi: many classes died tonight, but that will save kitten on the long term.
Martin Quinson [Sat, 16 Nov 2019 01:57:58 +0000 (02:57 +0100)]
smpi: many classes died tonight, but that will save kitten on the long term.

smpi::Coll was a class with 11 static methods (one per MPI function
that has several implementations: allgather, allgatherv, etc) and
nothing else.

That class was derivated for each implementation of a given MPI
function, and the resulting class was overloading only one of the
methods while the others were ignored. There was well over 100 such
child classes.

The overloaded methods were static in their class, and always used as
a function (the class was never instanciated).

All this was written with some macros to reduce the burden.

Instead, we now use regular functions in the smpi namespace.

4 years agofix ns3 builds
Martin Quinson [Thu, 14 Nov 2019 17:15:48 +0000 (18:15 +0100)]
fix ns3 builds

4 years agodeprecate MSG_set_function, that seems useless since we cannot bypass the parser...
Martin Quinson [Thu, 14 Nov 2019 09:39:20 +0000 (10:39 +0100)]
deprecate MSG_set_function, that seems useless since we cannot bypass the parser nowadays

4 years agostore kernel-level objects in EngineImpl
Frederic Suter [Thu, 14 Nov 2019 10:00:12 +0000 (11:00 +0100)]
store kernel-level objects in EngineImpl

4 years agomake piface_ private and have get_iface() everywhere
Frederic Suter [Wed, 13 Nov 2019 12:22:12 +0000 (13:22 +0100)]
make piface_ private and have get_iface() everywhere