Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
6 years ago[mc] mc_comm_pattern.c containing all communication pattern functions
Gabriel Corona [Fri, 13 Mar 2015 11:13:55 +0000 (12:13 +0100)]
[mc] mc_comm_pattern.c containing all communication pattern functions

6 years ago[mc] MCed memory access in MC_state_get_request()
Gabriel Corona [Thu, 12 Mar 2015 15:02:18 +0000 (16:02 +0100)]
[mc] MCed memory access in MC_state_get_request()

6 years ago[mc] Remote support for filling state->internal_comm
Gabriel Corona [Thu, 12 Mar 2015 13:42:21 +0000 (14:42 +0100)]
[mc] Remote support for filling state->internal_comm

6 years ago[mc] Fetch simix_process_maxpid from MCed
Gabriel Corona [Thu, 12 Mar 2015 12:37:55 +0000 (13:37 +0100)]
[mc] Fetch simix_process_maxpid from MCed

6 years ago[mc] Simplify nesting of MC_state_get_request
Gabriel Corona [Thu, 12 Mar 2015 10:07:26 +0000 (11:07 +0100)]
[mc] Simplify nesting of MC_state_get_request

6 years agoMerge branch 'master' into mc-process
Gabriel Corona [Tue, 10 Mar 2015 11:13:14 +0000 (12:13 +0100)]
Merge branch 'master' into mc-process

Conflicts:
examples/smpi/mc/non_deterministic.tesh
examples/smpi/mc/only_send_deterministic.tesh
src/include/mc/mc.h
src/mc/mc_base.c
src/mc/mc_comm_determinism.c
src/mc/mc_config.c
src/mc/mc_global.c
src/mc/mc_page_snapshot.cpp
src/mc/mc_request.c

6 years ago[mc] Add more smx_process_t MCer/MCed translations
Gabriel Corona [Tue, 10 Mar 2015 10:10:52 +0000 (11:10 +0100)]
[mc] Add more smx_process_t MCer/MCed translations

6 years ago[mc] Remote access to process name
Gabriel Corona [Mon, 2 Mar 2015 09:58:22 +0000 (10:58 +0100)]
[mc] Remote access to process name

6 years ago[mc] Read host name from remote process
Gabriel Corona [Fri, 27 Feb 2015 10:58:55 +0000 (11:58 +0100)]
[mc] Read host name from remote process

6 years ago[mc] Cross-process access to smx_process and simcall
Gabriel Corona [Mon, 23 Feb 2015 15:08:17 +0000 (16:08 +0100)]
[mc] Cross-process access to smx_process and simcall

Process and host names are not handled yet.

6 years agoAdd missing copyright notice
Gabriel Corona [Fri, 27 Feb 2015 14:52:29 +0000 (15:52 +0100)]
Add missing copyright notice

6 years agomodel-checker : MUTEX_UNLOCK is invisible for MC
Marion Guthmuller [Thu, 26 Feb 2015 09:22:04 +0000 (10:22 +0100)]
model-checker : MUTEX_UNLOCK is invisible for MC

6 years agomodel-checker : mutex owner may be NULL after UNLOCK
Marion Guthmuller [Thu, 26 Feb 2015 09:15:19 +0000 (10:15 +0100)]
model-checker : mutex owner may be NULL after UNLOCK

6 years agomodel-checker : initialize variable
Marion Guthmuller [Wed, 25 Feb 2015 18:18:10 +0000 (19:18 +0100)]
model-checker : initialize variable

6 years agomodel-checker : clang compliant
Marion Guthmuller [Wed, 25 Feb 2015 18:00:14 +0000 (19:00 +0100)]
model-checker : clang compliant

6 years agomodel-checker : removed tesh forgotten in DefinePackages.cmake
Marion Guthmuller [Wed, 25 Feb 2015 17:42:30 +0000 (18:42 +0100)]
model-checker : removed tesh forgotten in DefinePackages.cmake

6 years agomodel-checker : include MUTEX_LOCK and UNLOCK in dot output
Marion Guthmuller [Wed, 25 Feb 2015 17:37:11 +0000 (18:37 +0100)]
model-checker : include MUTEX_LOCK and UNLOCK in dot output

6 years agomodel-checker : really (?) fix SIMCALL_MUTEX_LOCK and UNLOCK with MC
Marion Guthmuller [Wed, 25 Feb 2015 17:03:15 +0000 (18:03 +0100)]
model-checker : really (?) fix SIMCALL_MUTEX_LOCK and UNLOCK with MC

6 years agomodel-checker : fix SIMCALL_MUTEX_LOCK with MC
Marion Guthmuller [Wed, 25 Feb 2015 15:13:33 +0000 (16:13 +0100)]
model-checker : fix SIMCALL_MUTEX_LOCK with MC

6 years agomodel-checker : extend comm determinism verification
Marion Guthmuller [Tue, 24 Feb 2015 16:25:36 +0000 (17:25 +0100)]
model-checker : extend comm determinism verification

6 years agomodel-checker : new files forgotten
Marion Guthmuller [Tue, 24 Feb 2015 16:18:16 +0000 (17:18 +0100)]
model-checker : new files forgotten

6 years agomodel-checker : non-progressive cycle detection (enabled with --cfg=model-check/termi...
Marion Guthmuller [Tue, 24 Feb 2015 13:05:54 +0000 (14:05 +0100)]
model-checker : non-progressive cycle detection (enabled with --cfg=model-check/termination:1)

6 years agofix the formating of the energy plugin's documentation -- sorry for the noise
Martin Quinson [Mon, 23 Feb 2015 10:30:46 +0000 (11:30 +0100)]
fix the formating of the energy plugin's documentation -- sorry for the noise

6 years ago[mc] Use MC_process_is_enabled instead of MC_request_is_enabled
Gabriel Corona [Mon, 23 Feb 2015 09:58:30 +0000 (10:58 +0100)]
[mc] Use MC_process_is_enabled instead of MC_request_is_enabled

This is consistent with other similar loops.

6 years agosome more documentation to the energy plugin
Martin Quinson [Mon, 23 Feb 2015 09:23:44 +0000 (10:23 +0100)]
some more documentation to the energy plugin

6 years agorename one of the energy examples
Martin Quinson [Mon, 23 Feb 2015 09:22:02 +0000 (10:22 +0100)]
rename one of the energy examples

6 years agocosmetics
Martin Quinson [Sun, 22 Feb 2015 15:37:47 +0000 (16:37 +0100)]
cosmetics

6 years agotypo--
Martin Quinson [Sun, 22 Feb 2015 15:01:56 +0000 (16:01 +0100)]
typo--

6 years agoIgnore the display of the used collective algorithm
Martin Quinson [Sun, 22 Feb 2015 15:01:01 +0000 (16:01 +0100)]
Ignore the display of the used collective algorithm

This is because the same tesh file is used to test all collective
variants: we do want them to give the exact same output (functional
testing).

6 years agoSMPI: info message when the collective algorithm is changed
Martin Quinson [Sun, 22 Feb 2015 14:29:24 +0000 (15:29 +0100)]
SMPI: info message when the collective algorithm is changed

6 years agodisplay the information earlier
Martin Quinson [Sun, 22 Feb 2015 14:25:13 +0000 (15:25 +0100)]
display the information earlier

6 years agoMerge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot//simgrid/simgrid
Arnaud Legrand [Wed, 18 Feb 2015 09:05:16 +0000 (10:05 +0100)]
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot//simgrid/simgrid

6 years agoImprove error message
Arnaud Legrand [Wed, 18 Feb 2015 09:04:45 +0000 (10:04 +0100)]
Improve error message

6 years agoUpdate SIMGRID_VERSION_DATE.
Arnaud Giersch [Tue, 17 Feb 2015 10:51:30 +0000 (11:51 +0100)]
Update SIMGRID_VERSION_DATE.

6 years agoTypos.
Arnaud Giersch [Tue, 17 Feb 2015 10:51:30 +0000 (11:51 +0100)]
Typos.

6 years agoReplace remaining smx_action by smx_synchro.
Arnaud Giersch [Tue, 17 Feb 2015 10:51:30 +0000 (11:51 +0100)]
Replace remaining smx_action by smx_synchro.

6 years agoFix comments.
Arnaud Giersch [Tue, 17 Feb 2015 10:51:30 +0000 (11:51 +0100)]
Fix comments.

Not sure that the example is really instructive, though.

6 years agoHave smpirun, smpicc and friends display the simgrid git hash version on --git-version
Martin Quinson [Mon, 16 Feb 2015 18:03:08 +0000 (19:03 +0100)]
Have smpirun, smpicc and friends display the simgrid git hash version on --git-version

6 years agomake smpirun guess the hostfile for cluster tags too
Martin Quinson [Mon, 16 Feb 2015 14:31:17 +0000 (15:31 +0100)]
make smpirun guess the hostfile for cluster tags too

6 years agomisleading typo in the comments
Martin Quinson [Sun, 15 Feb 2015 20:24:33 +0000 (21:24 +0100)]
misleading typo in the comments

6 years ago[mc] Do not use strerror(), not thread-safe
Gabriel Corona [Fri, 13 Feb 2015 14:34:16 +0000 (15:34 +0100)]
[mc] Do not use strerror(), not thread-safe

6 years agomodel-checker : include tag in comm determinism verification
Marion Guthmuller [Fri, 13 Feb 2015 14:00:33 +0000 (15:00 +0100)]
model-checker : include tag in comm determinism verification

6 years ago[mc] Remote support for MC_deadlock_check() using MC_MESSAGE_DEADLOCK_CHECK IPC message
Gabriel Corona [Fri, 13 Feb 2015 12:49:35 +0000 (13:49 +0100)]
[mc] Remote support for MC_deadlock_check() using MC_MESSAGE_DEADLOCK_CHECK IPC message

6 years agoMerge master into mc-process
Gabriel Corona [Thu, 12 Feb 2015 15:03:51 +0000 (16:03 +0100)]
Merge master into mc-process

6 years ago[mc] Make an option for file descriptor snapshot (off by default)
Gabriel Corona [Thu, 12 Feb 2015 10:21:37 +0000 (11:21 +0100)]
[mc] Make an option for file descriptor snapshot (off by default)

This option is currently not supported in client/server mode.

6 years ago[mc] Mark some issues as fixed
Gabriel Corona [Tue, 10 Feb 2015 14:52:09 +0000 (15:52 +0100)]
[mc] Mark some issues as fixed

6 years agomodel-checker : intermediate backtracking enabled if _sg_mc_checkpoint > 0
Marion Guthmuller [Tue, 10 Feb 2015 15:02:06 +0000 (16:02 +0100)]
model-checker : intermediate backtracking enabled if _sg_mc_checkpoint > 0

6 years ago[mc] Server side symbol evaluation
Gabriel Corona [Tue, 10 Feb 2015 13:37:10 +0000 (14:37 +0100)]
[mc] Server side symbol evaluation

This is currently only handled for symbols represented as variables
(opposed to symbols represented as callbacks): in order to evaluate
the callback we will have to ask the MCed to evaluate the callback for
us and send us the result back.

6 years agomodel-checker : memory leak
Marion Guthmuller [Tue, 10 Feb 2015 14:04:34 +0000 (15:04 +0100)]
model-checker : memory leak

6 years ago[mc] Register symbols as pointers in the examples
Gabriel Corona [Tue, 10 Feb 2015 11:32:34 +0000 (12:32 +0100)]
[mc] Register symbols as pointers in the examples

6 years ago[mc] Extend xbt_propositional_symbols
Gabriel Corona [Tue, 10 Feb 2015 11:19:20 +0000 (12:19 +0100)]
[mc] Extend xbt_propositional_symbols

Add support for:

 * general callbacks with a `void*` argument (the `data` field);

 * as an optimisation, a simple pointer to a variable can be passed in
   the `data` field (this can be used in order to enable the MCer to
   fetch the data directly from the MCed memory without trigerring a
   MCed-side callback);

 * a callback function used to free the `data` field.

6 years ago[mc] Cleanup heap switching code
Gabriel Corona [Tue, 10 Feb 2015 08:41:53 +0000 (09:41 +0100)]
[mc] Cleanup heap switching code

6 years agomodel-checker : revalidate tesh
Marion Guthmuller [Mon, 9 Feb 2015 18:39:18 +0000 (19:39 +0100)]
model-checker : revalidate tesh

6 years agomodel-checker : cosmetics
Marion Guthmuller [Mon, 9 Feb 2015 18:38:55 +0000 (19:38 +0100)]
model-checker : cosmetics

6 years agomodel-checker : non-recursive liveness algorithm
Marion Guthmuller [Mon, 9 Feb 2015 18:38:39 +0000 (19:38 +0100)]
model-checker : non-recursive liveness algorithm

6 years agomodel-checker : intermediate backtracking with model-check/checkpoint cfg flag
Marion Guthmuller [Mon, 9 Feb 2015 18:37:14 +0000 (19:37 +0100)]
model-checker : intermediate backtracking with model-check/checkpoint cfg flag

6 years agomodel-checker : communications determinism with visited state equality reduction
Marion Guthmuller [Mon, 9 Feb 2015 18:31:41 +0000 (19:31 +0100)]
model-checker : communications determinism with visited state equality reduction

6 years ago[mc] Add MCer handling for MC_MESSAGE_IGNORE_HEAP and MC_MESSAGE_UNIGNORE_HEAP
Gabriel Corona [Fri, 6 Feb 2015 14:55:48 +0000 (15:55 +0100)]
[mc] Add MCer handling for MC_MESSAGE_IGNORE_HEAP and MC_MESSAGE_UNIGNORE_HEAP

6 years ago(wip) Move the MCed public API in the same file
Gabriel Corona [Fri, 6 Feb 2015 13:58:15 +0000 (14:58 +0100)]
(wip) Move the MCed public API in the same file

6 years ago[mc] New message for stack_area
Gabriel Corona [Fri, 6 Feb 2015 13:26:20 +0000 (14:26 +0100)]
[mc] New message for stack_area

6 years ago[mc] Flag global variables in mc_ignore as belonging to the MCer
Gabriel Corona [Fri, 6 Feb 2015 12:55:18 +0000 (13:55 +0100)]
[mc] Flag global variables in mc_ignore as belonging to the MCer

6 years ago[mc] Communicate MC_remove_ignore_heap to the remote model-checker
Gabriel Corona [Fri, 6 Feb 2015 11:58:46 +0000 (12:58 +0100)]
[mc] Communicate MC_remove_ignore_heap to the remote model-checker

6 years ago[mc] Do not call malloc_no_memset in mc_snapshot
Gabriel Corona [Fri, 6 Feb 2015 11:08:12 +0000 (12:08 +0100)]
[mc] Do not call malloc_no_memset in mc_snapshot

The main code should not called mmalloc/mmfree/mmrealloc directly
because it will fail in client/server mode: the server does not have
separate heap and will choke on this.

Replace mmalloc_no_memset with malloc_no_memset which does the right
thing:

  * either call mmalloc_no_memset;

  * or call malloc.

6 years ago[mc] Implement remote support for MC_ignore
Gabriel Corona [Fri, 6 Feb 2015 10:29:56 +0000 (11:29 +0100)]
[mc] Implement remote support for MC_ignore

6 years ago[mc] Move mc_model_checker in its own .c file
Gabriel Corona [Fri, 6 Feb 2015 09:52:48 +0000 (10:52 +0100)]
[mc] Move mc_model_checker in its own .c file

6 years ago[mc] Communication of heap_area_to_ignore to the remote MCer
Gabriel Corona [Thu, 5 Feb 2015 14:03:51 +0000 (15:03 +0100)]
[mc] Communication of heap_area_to_ignore to the remote MCer

6 years ago[mc] Define one struct per MC message type
Gabriel Corona [Thu, 5 Feb 2015 14:03:36 +0000 (15:03 +0100)]
[mc] Define one struct per MC message type

6 years agoNew property: watt_off to denote the disipation when the host is off
Martin Quinson [Tue, 3 Feb 2015 22:07:52 +0000 (23:07 +0100)]
New property: watt_off to denote the disipation when the host is off

6 years ago[mc] Move MC_init_pid outside of mc_server
Gabriel Corona [Tue, 3 Feb 2015 14:44:28 +0000 (15:44 +0100)]
[mc] Move MC_init_pid outside of mc_server

6 years ago[mc] Remove some functions in mc_server
Gabriel Corona [Tue, 3 Feb 2015 14:36:02 +0000 (15:36 +0100)]
[mc] Remove some functions in mc_server

6 years ago[mc] Basic infrastructure for a real model-checker process
Gabriel Corona [Tue, 3 Feb 2015 10:26:44 +0000 (11:26 +0100)]
[mc] Basic infrastructure for a real model-checker process

The model checker process communicates with the model-checked
application using socket (and wait). Currently it waits for the MCed
process initialisation and fetch its system state, DWARF information,
etc but does not do anything else.

The previous (standalone) mode is currently used by default. The new
behaviour is triggered with the SIMGRID_MC_MODE=server
environment. The idea is to keep the standalone version at least as
long as the new version is not stable/working.

6 years agocosmetics in example and revalidate all energy examples
Martin Quinson [Tue, 3 Feb 2015 08:50:56 +0000 (09:50 +0100)]
cosmetics in example and revalidate all energy examples

6 years agopartially fix the energy public API (massive renames ongoing)
Martin Quinson [Tue, 3 Feb 2015 00:58:49 +0000 (01:58 +0100)]
partially fix the energy public API (massive renames ongoing)

6 years agoFix energy plugin wrt idle time
Martin Quinson [Tue, 3 Feb 2015 00:17:09 +0000 (01:17 +0100)]
Fix energy plugin wrt idle time

- Count the last idle period when the host is destroyed
- More informative debug messages in the plugin
- More informative messages in the example (to make computations
  manually enforcable)

6 years agoEnable C++11
Gabriel Corona [Mon, 2 Feb 2015 13:37:28 +0000 (14:37 +0100)]
Enable C++11

6 years ago[mc] Remove useless code in ~DWARF test
Gabriel Corona [Fri, 30 Jan 2015 12:51:07 +0000 (13:51 +0100)]
[mc] Remove useless code in ~DWARF test

6 years ago[mc] Remote unwinding support
Gabriel Corona [Mon, 19 Jan 2015 14:54:13 +0000 (15:54 +0100)]
[mc] Remote unwinding support

The contexts are still read directly from the current process memory
however.

6 years agofix a test by hardcoding the used machines
Martin Quinson [Tue, 27 Jan 2015 07:03:45 +0000 (08:03 +0100)]
fix a test by hardcoding the used machines

I changed the platform recently to test properties with clusters

6 years agorename the property used by the energy plugin for clarity
Martin Quinson [Mon, 26 Jan 2015 20:57:09 +0000 (21:57 +0100)]
rename the property used by the energy plugin for clarity

6 years agoreduce the amount of cruft loaded in the jarfile (don't include doxygen sources)
Martin Quinson [Mon, 26 Jan 2015 20:56:21 +0000 (21:56 +0100)]
reduce the amount of cruft loaded in the jarfile (don't include doxygen sources)

6 years agooops, remove verbose debug output
Martin Quinson [Mon, 26 Jan 2015 17:07:04 +0000 (18:07 +0100)]
oops, remove verbose debug output

6 years agoeven more informative error message
Martin Quinson [Mon, 26 Jan 2015 09:03:53 +0000 (10:03 +0100)]
even more informative error message

6 years agomore informative (?) error message
Martin Quinson [Sun, 25 Jan 2015 23:26:52 +0000 (00:26 +0100)]
more informative (?) error message

6 years agotest that the hosts get the cluster's properties
Martin Quinson [Sun, 25 Jan 2015 22:57:06 +0000 (23:57 +0100)]
test that the hosts get the cluster's properties

6 years agoproperly pass the cluster's properties to the created hosts
Martin Quinson [Sun, 25 Jan 2015 22:54:30 +0000 (23:54 +0100)]
properly pass the cluster's properties to the created hosts

6 years agomore informative error message in some obscure error settings
Martin Quinson [Sun, 25 Jan 2015 21:56:36 +0000 (22:56 +0100)]
more informative error message in some obscure error settings

6 years agocosmetics in comments
Martin Quinson [Wed, 14 Jan 2015 21:24:50 +0000 (22:24 +0100)]
cosmetics in comments

6 years ago[mc] Make a copy of the libunwind context when snapshoting the stacks
Gabriel Corona [Fri, 23 Jan 2015 09:11:15 +0000 (10:11 +0100)]
[mc] Make a copy of the libunwind context when snapshoting the stacks

The libunwind cursors used in `mc_snapshot_stack_t` were referencing
the real/live libunwind contexts: this is wrong because those contexts
change with the simulated application. Instead, we need to take a copy
of the context.

6 years agoModified error messages when creating CPUs for more verbosity.
Christian Heinrich [Thu, 22 Jan 2015 11:34:25 +0000 (12:34 +0100)]
Modified error messages when creating CPUs for more verbosity.

As 0 may be assumed as the default powerPeak value (if no value specified),
the error message should point out that the power attribute may have been
forgotten. This was added in this commit.

6 years agomore verbose output following a weird crash on my laptop
suter [Tue, 20 Jan 2015 20:26:01 +0000 (21:26 +0100)]
more verbose output following a weird crash on my laptop

6 years agoUpdated lua README file to reflect current state of SG
Christian Heinrich [Mon, 19 Jan 2015 15:42:26 +0000 (16:42 +0100)]
Updated lua README file to reflect current state of SG

- File small_platform.xml was moved to a different location
- Added full example for execution; without it, it doesn't work.

6 years ago[mc] Add some comments
Gabriel Corona [Fri, 16 Jan 2015 13:10:13 +0000 (14:10 +0100)]
[mc] Add some comments

6 years ago[mc] Create a separate simgrid-mc program
Gabriel Corona [Fri, 9 Jan 2015 15:04:25 +0000 (16:04 +0100)]
[mc] Create a separate simgrid-mc program

We create a separate program for the model-checker. The goal is that
this program will:

  - prepare the environment for the child/main process (environment
    variables, maybe LD_PRELOAD a library, pass file descriptors);

  - hold all the model-checker state;

  - communicate with the child process;

  - handle some part of the snapshoting/restoration logic;

  - handle the state comparison logic.

Currently it only enables the custom heap in the child process.

6 years ago[mc] Remove remaining bits on hardcoded object list
Gabriel Corona [Fri, 9 Jan 2015 10:18:26 +0000 (11:18 +0100)]
[mc] Remove remaining bits on hardcoded object list

6 years agoMerge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid
Martin Quinson [Tue, 6 Jan 2015 19:58:37 +0000 (20:58 +0100)]
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid

6 years agoFixed cmake/doxygen errors on old systems.
Christian Heinrich [Tue, 6 Jan 2015 18:10:28 +0000 (19:10 +0100)]
Fixed cmake/doxygen errors on old systems.

cmake 2.8.7 on Ubuntu 12.04 LTS does not support the
DOXYGEN_VERSION variable, hence documentation can never be
built as this variable is required.

The added code checks whether the DOXYGEN_EXECUTABLE
is set and executes doxygen --version itself; hence
making this variable available.

Tested on Ubuntu 12.04 LTS.

6 years agoChange order of initialization.
Augustin Degomme [Tue, 6 Jan 2015 14:14:01 +0000 (15:14 +0100)]
Change order of initialization.
If the cpumodel is constructed before msg init is called, a log message is sent without proper init
This meant undefined behavior, and in one particular case the wrong locale being selected, the message used a comma as a separator instead of a dot.
There was a big hint in the comment just before : "do not do anything before the msg.init call !"

6 years agoChange include order for smpi tests/examples to avoid conflicts
Augustin Degomme [Mon, 5 Jan 2015 17:03:53 +0000 (18:03 +0100)]
Change include order for smpi tests/examples to avoid conflicts
This include folder is the one where our mpi.h file lives.
This file is provided by various other libraries.
When another simgrid include folder contains another mpi.h file from another library, build is broken
This trouble was seen on a freebsd system with graphviz installed, which added an include path in /usr/local/include, where there was a mpi.h file from mpich
This commit forces the one from smpi to be the first and only mpi.h file examples/tests do use

6 years agoavoid breaking with recent freebsd that implement this flag (as the comment said)
Augustin Degomme [Mon, 5 Jan 2015 15:14:12 +0000 (16:14 +0100)]
avoid breaking with recent freebsd that implement this flag (as the comment said)
This should help other bsds as well

6 years agokepler->luna
Martin Quinson [Mon, 22 Dec 2014 22:04:09 +0000 (23:04 +0100)]
kepler->luna