Augustin Degomme [Tue, 23 Sep 2014 07:33:12 +0000 (09:33 +0200)]
Revert "Don't use variables only for asserts."
This reverts commit
c63217359371b823ac279159633e66bc0ea8bb6f.
Augustin Degomme [Mon, 22 Sep 2014 13:22:24 +0000 (15:22 +0200)]
Don't use variables only for asserts.
When enable_debug is turned to off, they become unused and induce warnings/errors
Augustin Degomme [Mon, 22 Sep 2014 13:17:05 +0000 (15:17 +0200)]
NDEBUG was not used on C++ files when enable_debug was set to 0
Augustin Degomme [Mon, 22 Sep 2014 09:20:43 +0000 (11:20 +0200)]
Fix failing tests when enable_debug is not activated.
Adds an alternative tesh file for logs
Augustin Degomme [Mon, 22 Sep 2014 08:43:42 +0000 (10:43 +0200)]
Fix Cmake warnings/errors since Cmake versions > 2.8.12
Augustin Degomme [Fri, 19 Sep 2014 14:29:15 +0000 (16:29 +0200)]
[xbt/surf] Change the costly heapremove+heapinsert used in share resource lazy algorithm.
Add a xbt_heap_update function, to set a new value for a element in the heap
Augustin Degomme [Fri, 19 Sep 2014 08:03:01 +0000 (10:03 +0200)]
fix reduce_scatter ompi
Augustin Degomme [Wed, 17 Sep 2014 21:11:56 +0000 (23:11 +0200)]
Win build does not support mmap, or shared_malloc
Augustin Degomme [Wed, 17 Sep 2014 16:32:05 +0000 (18:32 +0200)]
Always build Fortran bindings..
They are in C, they don't need Fortran compiler, and if we release the built library, we want them.
And also it fixes the build, broken since my last commit ..
Augustin Degomme [Wed, 17 Sep 2014 14:55:38 +0000 (16:55 +0200)]
Implement MPI_*_c2f MPI_*_f2c functions
Actually they were already implemented but with another name, make them public..
Augustin Degomme [Wed, 17 Sep 2014 11:57:10 +0000 (13:57 +0200)]
missing include
Augustin Degomme [Wed, 17 Sep 2014 08:56:34 +0000 (10:56 +0200)]
put back sleep time before actual send and recv.
Augustin Degomme [Tue, 16 Sep 2014 12:44:57 +0000 (14:44 +0200)]
doc update
Augustin Degomme [Tue, 16 Sep 2014 12:44:45 +0000 (14:44 +0200)]
don't set knomial factor for reduce, have it be computed at runtime
Augustin Degomme [Tue, 16 Sep 2014 12:44:12 +0000 (14:44 +0200)]
add one algo to the list
Gabriel Corona [Tue, 16 Sep 2014 07:44:29 +0000 (09:44 +0200)]
[mc] Add a (compile time) option for content addressage page store
With a simple hash, we expect collision to happen: when inserting a
new page in the store, each stored page with the same hash is compared
(memcmp-ed) with the current page. If a page already present is
inserted, the content of the stored page is always pulled in the
cache: when inserting n pages, into the page store at least 2×n pages
are pulled in the cache.
With this option, a collision-free fingerprint of each page is
computed. As there is no collision, we do not have to check the
content of the stored pages. MD4 is used as we do not need security
against malicious users and it is much faster than more sescure
cryptographic hashes.
Augustin Degomme [Mon, 15 Sep 2014 09:23:13 +0000 (11:23 +0200)]
Fix bug in addtests macros.
Variables are global in Cmake, and ARGR was used int two different macros, resulting in tests being executed will all factories activated..
In the end only Thread factory seems to have been tested in the last few months ...
Augustin Degomme [Fri, 12 Sep 2014 08:36:50 +0000 (10:36 +0200)]
Fix issue with precision in
394ea1fb (on 32 bits platforms mainly)
Augustin Degomme [Thu, 11 Sep 2014 16:14:59 +0000 (18:14 +0200)]
requalify tesh
Augustin Degomme [Thu, 11 Sep 2014 16:08:58 +0000 (18:08 +0200)]
Fix order of mailbox checking
Some messages were not assigned correctly. This is still a mess.
Augustin Degomme [Thu, 11 Sep 2014 15:01:04 +0000 (17:01 +0200)]
no \n in debug messages
Augustin Degomme [Thu, 11 Sep 2014 12:37:32 +0000 (14:37 +0200)]
fix build
Augustin Degomme [Thu, 11 Sep 2014 12:24:28 +0000 (14:24 +0200)]
enable by default asynchronous sends for small messages in mpich teshsuite.
Augustin Degomme [Thu, 11 Sep 2014 12:23:29 +0000 (14:23 +0200)]
remove useless flag in tests
Augustin Degomme [Thu, 11 Sep 2014 12:23:10 +0000 (14:23 +0200)]
test for replay - enabling buffer sharing by default when replaying
Only one algo for now, maybe more later
Augustin Degomme [Thu, 11 Sep 2014 12:16:26 +0000 (14:16 +0200)]
Fix bug in lmm_solve, which triggered incorrect die_impossible situation
Copyright alvin 2014
Augustin Degomme [Thu, 11 Sep 2014 08:58:19 +0000 (10:58 +0200)]
Fix bug in SMPI with permanent receive mode.
Receive can be posted with a size exceding the asynchronous threshold, while corresponding send was posted with a smaller size.
This is legal in MPI, but caused SMPI to put one request in the large mailbox and the other one in the small mailbox, thus preventing matching of messages, and causing deadlocks
Probing is used now, in order to try to match a message in the other mailbox before the actual operation.
Augustin Degomme [Thu, 11 Sep 2014 08:55:48 +0000 (10:55 +0200)]
update algo
Augustin Degomme [Thu, 11 Sep 2014 08:55:41 +0000 (10:55 +0200)]
forgotten include file
Augustin Degomme [Thu, 11 Sep 2014 12:31:10 +0000 (14:31 +0200)]
resolve conflict
Augustin Degomme [Thu, 11 Sep 2014 08:53:11 +0000 (10:53 +0200)]
change iprobe in order to allow probing on outgoing communications (has the receive already been posted)
Augustin Degomme [Fri, 5 Sep 2014 09:13:47 +0000 (11:13 +0200)]
Add a little hack to have replay + SMP collectives
The problem was that having replay active did make SMPI skip all buffer copies.
But in this function we actually need the data exchanged between processes.
So we temporary tell SimGrid it is not replaying, here.
Augustin Degomme [Thu, 4 Sep 2014 16:38:33 +0000 (18:38 +0200)]
leak --
Augustin Degomme [Thu, 4 Sep 2014 16:37:43 +0000 (18:37 +0200)]
don't use calloc for these buffers
Initializing them to 0 made them use physical memory, while letting them uninitialized, (and unused as in replay we may not need them) puts them in virtual memory
Augustin Degomme [Thu, 4 Sep 2014 15:47:08 +0000 (17:47 +0200)]
avoid warnings (and errors) without debug enabled
Augustin Degomme [Wed, 3 Sep 2014 08:45:20 +0000 (10:45 +0200)]
warning --
Augustin Degomme [Tue, 2 Sep 2014 14:05:35 +0000 (16:05 +0200)]
update replay tesh
Augustin Degomme [Tue, 2 Sep 2014 14:05:27 +0000 (16:05 +0200)]
have replay use correct algorithm selection logic. Some of them did use only default algos.
Gabriel Corona [Thu, 11 Sep 2014 10:10:56 +0000 (12:10 +0200)]
[smpi] Restore privatisation mapping smpi_execute()
smpi_execute() calls a the host_execution simcall which might generate
a process switch. After this, we might not have the correct SMPI
privatisation region: we have to rectore it. The correct privatisation
mapping is needed by some code between smpi_bench_end() and
smpi_bench_begin().
Gabriel Corona [Thu, 11 Sep 2014 08:16:56 +0000 (10:16 +0200)]
[smpi] Fix typo when fixing memory allocation (again)
Gabriel Corona [Thu, 11 Sep 2014 08:00:06 +0000 (10:00 +0200)]
[smpi] Fix typo when fixing memory allocation
Marion Guthmuller [Tue, 9 Sep 2014 12:49:28 +0000 (14:49 +0200)]
model-checker : disable smpi bench timer if MC enabled
Gabriel Corona [Fri, 5 Sep 2014 09:48:31 +0000 (11:48 +0200)]
[smpi] Change parallel arrays into array of structs
Gabriel Corona [Fri, 5 Sep 2014 09:32:21 +0000 (11:32 +0200)]
[smpi] Simplify code for SMPI privatisation
Gabriel Corona [Fri, 5 Sep 2014 09:26:44 +0000 (11:26 +0200)]
[smpi] Use SMPI namespace for some public variables/functions
Gabriel Corona [Tue, 2 Sep 2014 12:01:18 +0000 (14:01 +0200)]
Avoid tautological-compare
Clang complains about tautological compare: it seems an unsigned
integer is always non-negative.
Gabriel Corona [Tue, 2 Sep 2014 11:29:28 +0000 (13:29 +0200)]
[smpi] Allow zero-sized custom datatypes with MPI_Type_contiguous()
MPI_Type_contiguous(0, oldtype, newtype) is valid in MPI but SMPI does
not accept it as the resulting datatype is considered invalid: SMPI
does not accept datatypes with size of 0. Fix the datatype validation
function in order to accept this.
This type of datatype is used in bcastzerotype.
bcast-NTSL is fixed as well (division by zero).
Gabriel Corona [Fri, 29 Aug 2014 10:31:11 +0000 (12:31 +0200)]
Merge branch 'mc'
Gabriel Corona [Fri, 29 Aug 2014 10:25:27 +0000 (12:25 +0200)]
[mc] Fix smpi_process_index_of_smx_process()
The SMPI process ID is simply the SIMIX PID - 1. The previous solution
(getting the data field of the SIMIX process) was mostly correct but
the 'data' field was not initally set to the SMPI process data
structure (but was NULL).
Gabriel Corona [Fri, 29 Aug 2014 08:54:30 +0000 (10:54 +0200)]
Make the cast explicit in smpi_process_index_of_smx_process()
When getting the SMPI process data from a SIMIX process a cast is done
from void* to smpi_process_data_t. Make it explicit.
Gabriel Corona [Fri, 29 Aug 2014 08:52:14 +0000 (10:52 +0200)]
[mc] Initalize the SMPI options before creating the processes
This is necessary because the MC code handling the creation of
processes needs to be aware of the SMPI options. This look like a huge
mix of the different layers (SMPI, MC, SIMIX).
Augustin Degomme [Thu, 28 Aug 2014 13:26:15 +0000 (15:26 +0200)]
Add a xbt wrapper for simcall_mutex_trylock (asked in [#17878])
Augustin Degomme [Thu, 28 Aug 2014 13:02:39 +0000 (15:02 +0200)]
remove outdated paragraph in faq
Augustin Degomme [Thu, 28 Aug 2014 13:01:10 +0000 (15:01 +0200)]
add mention of valgrind and gdb in documentation of context factories
Augustin Degomme [Thu, 28 Aug 2014 12:39:02 +0000 (14:39 +0200)]
warning --
Augustin Degomme [Thu, 28 Aug 2014 12:33:45 +0000 (14:33 +0200)]
bring back network model updateActionsStateFull function. network/optim:Full option should work again
It was previously returning an unimplemented exception
Adrien Lebre [Thu, 28 Aug 2014 10:17:08 +0000 (11:17 +0100)]
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
Adrien Lebre [Thu, 28 Aug 2014 10:16:58 +0000 (11:16 +0100)]
Throw a host failure exception instead of a jni one - adrien
Gabriel Corona [Tue, 26 Aug 2014 11:27:22 +0000 (13:27 +0200)]
[mc] Revert to previous heap scanning method
There are issues with the current version.
Gabriel Corona [Tue, 26 Aug 2014 11:10:50 +0000 (13:10 +0200)]
[mc] Fix bug in mmalloc_compare_heap() when a ungragmented block is handled as a fragmented one
This bug was introduced by the commit of MMALLOC_TYPE_HEAPINFO.
Gabriel Corona [Tue, 26 Aug 2014 10:28:34 +0000 (12:28 +0200)]
[mc] Better condition for switching privatized data segment in MC_restore_snapshot()
Gabriel Corona [Tue, 26 Aug 2014 10:12:14 +0000 (12:12 +0200)]
[mc] Fix MC_snapshot_add_region() to forward correctly its arguments
As start_addr==permanent_addr for every call of
MC_snapshot_add_region() there is no impact on the current behaviour.
Gabriel Corona [Tue, 26 Aug 2014 09:29:46 +0000 (11:29 +0200)]
[mc] Fix broken MC_region_destroy()
The current implementation either segfaults or does nothing.
Gabriel Corona [Fri, 25 Jul 2014 14:12:49 +0000 (16:12 +0200)]
[mc] ISP tests integration
Augustin Degomme [Thu, 21 Aug 2014 07:55:20 +0000 (09:55 +0200)]
avoid warning by checking index in the right order
Augustin Degomme [Wed, 20 Aug 2014 14:52:01 +0000 (16:52 +0200)]
Add settings for Intel MPI with 2,4,8,16 processes/node on Stampede
Augustin Degomme [Wed, 20 Aug 2014 14:42:44 +0000 (16:42 +0200)]
switch way old SMP aware algos work, to be closer to the ones from mvapich
Augustin Degomme [Tue, 19 Aug 2014 15:00:18 +0000 (17:00 +0200)]
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
etortilopez [Mon, 18 Aug 2014 15:49:49 +0000 (17:49 +0200)]
get back cleanup erased in
4cebfd8
Augustin Degomme [Mon, 18 Aug 2014 14:05:24 +0000 (16:05 +0200)]
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
etortilopez [Mon, 18 Aug 2014 13:27:55 +0000 (15:27 +0200)]
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
etortilopez [Mon, 18 Aug 2014 13:26:34 +0000 (15:26 +0200)]
added option to bind threads to physical cores
Augustin Degomme [Mon, 18 Aug 2014 13:04:28 +0000 (15:04 +0200)]
Loopback was not correctly used in fat tree clusters.
Augustin Degomme [Mon, 18 Aug 2014 11:38:00 +0000 (13:38 +0200)]
Fix [#17799] : have mpi_group_range_incl and mpi_group_range_excl better test some corner cases.
Two tests added : that the rank is in the right range at all times, and that we don't go after the last one wanted.
Hopefully this will be enough to cover all cases.
Test commcreate1 from mpich 3 testsuite has been confirmed to pass with one process
The test with 1 process has been added to the test suite (it was with 8 processes before)
Paul Bédaride [Mon, 11 Aug 2014 13:18:50 +0000 (15:18 +0200)]
Add vm tesh
Paul Bédaride [Tue, 29 Jul 2014 13:08:03 +0000 (15:08 +0200)]
Add java teshsuite for sleep_host_off
Augustin Degomme [Fri, 8 Aug 2014 11:11:48 +0000 (13:11 +0200)]
leak --
Augustin Degomme [Fri, 8 Aug 2014 11:10:10 +0000 (13:10 +0200)]
Attempt for a macos version of the threadtimer
Augustin Degomme [Fri, 8 Aug 2014 11:09:29 +0000 (13:09 +0200)]
Do not have cputime and threadtime return a no-op when only gettimeofday is available.
Behavior may be different than expected, but still better than nothing
Augustin Degomme [Thu, 7 Aug 2014 22:54:20 +0000 (00:54 +0200)]
silence (stupid) warnings from clang
didn't know hat having too many parenthesis around a test could trigger a warning ...
Augustin Degomme [Thu, 7 Aug 2014 22:31:40 +0000 (00:31 +0200)]
Add Bcast SMP Collectives from MVAPICH2
Still a few problems with pipelined algo from openmpi .. for now default to another one for these pipelined algos
degomme [Thu, 7 Aug 2014 15:17:23 +0000 (17:17 +0200)]
fix build
degomme [Thu, 7 Aug 2014 14:55:56 +0000 (16:55 +0200)]
Disable faulty mallocator test
Checking relative addresses of newly allocated memory (one call to new per element) is not really possible.
All systems on ci answer differently to this test, that should be revamped
degomme [Thu, 7 Aug 2014 14:08:24 +0000 (16:08 +0200)]
move platform file
Adrien Lebre [Thu, 7 Aug 2014 12:39:26 +0000 (14:39 +0200)]
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
Adrien Lebre [Thu, 7 Aug 2014 12:39:22 +0000 (14:39 +0200)]
Temporary patch to handle host failure exception during live migration of VM (a cleaner patch will be pushed in few days) - adrien
Martin Quinson [Thu, 7 Aug 2014 11:05:02 +0000 (13:05 +0200)]
stupid old gcc. That's initialized.
Martin Quinson [Thu, 7 Aug 2014 09:10:35 +0000 (11:10 +0200)]
add an example about the remote exception throwing (still not working entierely)
Martin Quinson [Thu, 7 Aug 2014 00:03:42 +0000 (02:03 +0200)]
New: SIMIX_process_throw() allows to raise exceptions in remote processes
Martin Quinson [Wed, 6 Aug 2014 23:59:59 +0000 (01:59 +0200)]
correct initializer
Martin Quinson [Wed, 6 Aug 2014 23:59:31 +0000 (01:59 +0200)]
react correctly if an exception does not originates the current process
Martin Quinson [Wed, 6 Aug 2014 22:54:03 +0000 (00:54 +0200)]
ensure that the process initializer actually works by using it
Martin Quinson [Wed, 6 Aug 2014 22:53:00 +0000 (00:53 +0200)]
make public the function that can display an exception
Martin Quinson [Wed, 6 Aug 2014 20:04:35 +0000 (22:04 +0200)]
useless cleanups
- one letter variables are harder to read
- remove a useless assert (the system will complain if it's null)
- improve some debug messages and comments
Martin Quinson [Wed, 6 Aug 2014 19:50:35 +0000 (21:50 +0200)]
ignore more generated files
Gabriel Corona [Fri, 1 Aug 2014 13:25:08 +0000 (15:25 +0200)]
[mc] Remove useless code & comment in mc_region_restore_sparse()
This is not supposed to happen.
Gabriel Corona [Fri, 1 Aug 2014 13:07:21 +0000 (15:07 +0200)]
[mc] DRY in MC_replay_liveness()
Augustin Degomme [Fri, 1 Aug 2014 11:51:56 +0000 (13:51 +0200)]
begin to add bcast MVAPICH collectives selector..
still defaults to mpich one for now
Augustin Degomme [Fri, 1 Aug 2014 11:38:56 +0000 (13:38 +0200)]
warning --
Augustin Degomme [Fri, 1 Aug 2014 11:09:49 +0000 (13:09 +0200)]
remove uninitialized warning