Martin Quinson [Mon, 30 Jul 2018 21:21:17 +0000 (23:21 +0200)]
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid
Martin Quinson [Mon, 30 Jul 2018 21:12:19 +0000 (23:12 +0200)]
doc: convert another chapter to RST
Martin Quinson [Mon, 30 Jul 2018 20:07:48 +0000 (22:07 +0200)]
Get the documentation to build on RTD
Martin Quinson [Mon, 30 Jul 2018 17:46:55 +0000 (19:46 +0200)]
doc: 'installation' converted to RST
Martin Quinson [Mon, 30 Jul 2018 17:46:25 +0000 (19:46 +0200)]
doc: Main concepts
Martin Quinson [Mon, 30 Jul 2018 17:44:13 +0000 (19:44 +0200)]
basic sphinx/breathe configuration for the documentation
Augustin Degomme [Mon, 30 Jul 2018 13:29:30 +0000 (15:29 +0200)]
plug leaks... Still don't like what's done here, it will need a good rewrite.
Frederic Suter [Sat, 28 Jul 2018 23:13:04 +0000 (01:13 +0200)]
uniformity in Activity cancel()
Frederic Suter [Sat, 28 Jul 2018 22:25:50 +0000 (00:25 +0200)]
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
Frederic Suter [Sat, 28 Jul 2018 22:24:54 +0000 (00:24 +0200)]
test exec->cancel() and simplify another test
Frederic Suter [Sat, 28 Jul 2018 22:23:50 +0000 (00:23 +0200)]
allow to cancel a s4u::Exec
Arnaud Giersch [Sat, 28 Jul 2018 21:48:03 +0000 (23:48 +0200)]
Cannot use range-based for loop when container is modified.
Arnaud Giersch [Sat, 28 Jul 2018 15:52:02 +0000 (17:52 +0200)]
One more filtered lib.
Wonder if we should not use a white list instead.
Arnaud Giersch [Fri, 27 Jul 2018 22:05:41 +0000 (00:05 +0200)]
filtered_libraries++
Arnaud Giersch [Fri, 27 Jul 2018 22:02:02 +0000 (00:02 +0200)]
Fix memory errors.
Arnaud Giersch [Thu, 26 Jul 2018 09:48:11 +0000 (11:48 +0200)]
Spurious 'n'.
Arnaud Giersch [Thu, 26 Jul 2018 08:28:50 +0000 (10:28 +0200)]
Keep list of filtered libraries sorted.
Arnaud Giersch [Thu, 19 Jul 2018 19:34:46 +0000 (21:34 +0200)]
Remove useless thread_local.
It doesn't make any difference if context/factory is not "thread".
Augustin Degomme [Thu, 26 Jul 2018 17:08:05 +0000 (19:08 +0200)]
as the comment was saying, that was unsafe, and flang was doing something else
Augustin Degomme [Thu, 26 Jul 2018 16:17:46 +0000 (18:17 +0200)]
Don't free there for intel compiler, it breaks.
Yes, that means leaking.
Christian Heinrich [Thu, 26 Jul 2018 09:34:43 +0000 (11:34 +0200)]
[HostLoad] And lastly: Update the hooks used
Christian Heinrich [Thu, 26 Jul 2018 09:34:26 +0000 (11:34 +0200)]
[HostLoad] Update the update() method to use ExecImplPtrs
These ptrs are stored in the class, see the previous commit
Christian Heinrich [Thu, 26 Jul 2018 09:22:22 +0000 (11:22 +0200)]
[HostLoad] Add method HostLoad::add_activity(ExecImplPtr)
The HostLoad plugin keeps track of all the computations that are going on
and does no longer have to rely on calculations of the sort time_passed*speed.
Instead, we can now access the total cost of the computation and keep track
of how much is still remaining. Like this, we always account for exactly
the cost of that calculation.
Christian Heinrich [Thu, 26 Jul 2018 09:16:41 +0000 (11:16 +0200)]
[HostLoad] Update when calling getters
This will allow us to remove the CpuAction hook and replace it with
hooks that are only used after a calculation has completed.
If for instance a daemon (dvfs, load balancer, ...) wants to get
up-to-date information, this is now assured through the update call.
Christian Heinrich [Thu, 26 Jul 2018 09:12:55 +0000 (11:12 +0200)]
[HostLoad] Update comments + add debug statement
Christian Heinrich [Thu, 26 Jul 2018 07:48:37 +0000 (09:48 +0200)]
[HostLoad] Elaborate on comment
Christian Heinrich [Mon, 23 Jul 2018 13:07:01 +0000 (15:07 +0200)]
[HostLoad] Remove wrong 'was_prev_idle' notion
The load is only updated after a call to LMM; this means, that
we get the real load the action caused by querying the constraint
and we don't need to have a variable for that state.
Christian Heinrich [Thu, 26 Jul 2018 14:38:26 +0000 (16:38 +0200)]
[ENERGY] Remove HostLoad-plugin dependency
Christian Heinrich [Mon, 23 Jul 2018 09:40:44 +0000 (11:40 +0200)]
[SURF] Cosmetics for CpuAction
Augustin Degomme [Thu, 26 Jul 2018 13:08:48 +0000 (15:08 +0200)]
missed one
Augustin Degomme [Thu, 26 Jul 2018 12:52:17 +0000 (14:52 +0200)]
make a copy of args for each process
Not optimal as it's only for fortran (ifort) that it's useful.
Done this way to see if it helps flang as well
Augustin Degomme [Thu, 26 Jul 2018 09:18:43 +0000 (11:18 +0200)]
add another library to excludes to please mc
Frederic Suter [Thu, 26 Jul 2018 08:22:49 +0000 (10:22 +0200)]
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
Augustin Degomme [Thu, 26 Jul 2018 08:22:13 +0000 (10:22 +0200)]
add libraries to excludes to please mc
Frederic Suter [Thu, 26 Jul 2018 07:51:00 +0000 (09:51 +0200)]
sonar
Frederic Suter [Thu, 26 Jul 2018 07:09:02 +0000 (09:09 +0200)]
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
Augustin Degomme [Wed, 25 Jul 2018 23:57:28 +0000 (01:57 +0200)]
Sometimes C and fortran compiler family differs...
Try to get around that.. Ugly for now.
Augustin Degomme [Wed, 25 Jul 2018 23:52:29 +0000 (01:52 +0200)]
flang also does need some help
Augustin Degomme [Wed, 25 Jul 2018 23:14:07 +0000 (01:14 +0200)]
forgot to change here
Augustin Degomme [Wed, 25 Jul 2018 22:57:34 +0000 (00:57 +0200)]
intel somehow also matches __GNUC__
Augustin Degomme [Wed, 25 Jul 2018 22:19:03 +0000 (00:19 +0200)]
add test for fortran params ... Not with MPI, but it should not change anything
Augustin Degomme [Wed, 25 Jul 2018 22:17:55 +0000 (00:17 +0200)]
these were not used since ... well .. a long time
Augustin Degomme [Wed, 25 Jul 2018 22:09:08 +0000 (00:09 +0200)]
send argv and argc to fortran runtimes, to allow using getarg
Frederic Suter [Wed, 25 Jul 2018 14:48:43 +0000 (16:48 +0200)]
simplifications
Frederic Suter [Wed, 25 Jul 2018 14:33:59 +0000 (16:33 +0200)]
remove another call to simcall_execution_start
Frederic Suter [Wed, 25 Jul 2018 14:00:38 +0000 (16:00 +0200)]
changing the way the tracing category is passed to ExecImpl
the former version implied to set the category AFTER the start()
because the ExecImpl had to exist. It was against the idea of "do all
the sets and then starts". Now, the category is set at user level and
then passed to the Impl within the start simcall. Setting a category
after the start is now forbidden.
Martin Quinson [Sun, 22 Jul 2018 21:10:46 +0000 (23:10 +0200)]
start to snake_case NS3
Martin Quinson [Sat, 21 Jul 2018 21:06:04 +0000 (23:06 +0200)]
snake_case k::r::NetworkConstant
Augustin Degomme [Tue, 24 Jul 2018 19:55:51 +0000 (21:55 +0200)]
reduce test size
Augustin Degomme [Tue, 24 Jul 2018 19:55:19 +0000 (21:55 +0200)]
Rework SMPI initialization to handle argc and argv earlier than in MPI_Init when possible.
Add support for MPI_Init(NULL,NULL).
Might break MC for now.
Frederic Suter [Tue, 24 Jul 2018 11:15:04 +0000 (13:15 +0200)]
fix the (unoticed) mess I made
Frederic Suter [Sat, 21 Jul 2018 15:19:34 +0000 (17:19 +0200)]
please clang
Frederic Suter [Sat, 21 Jul 2018 15:05:41 +0000 (17:05 +0200)]
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
Frederic Suter [Sat, 21 Jul 2018 15:03:49 +0000 (17:03 +0200)]
remove direct call to simcall
modify order in replay example
set the tracing category breaks examples/smpi/tracing but do not seem
to be needed so comment it for now. Further simplifications in tracing
may help to understand and/or fix.
Frederic Suter [Sat, 21 Jul 2018 15:02:33 +0000 (17:02 +0200)]
do not use simcall_execution_start directly
Frederic Suter [Sat, 21 Jul 2018 13:25:17 +0000 (15:25 +0200)]
allow to set a tracing category for an Exec
Frederic Suter [Sat, 21 Jul 2018 12:34:27 +0000 (14:34 +0200)]
stringify tracing category
Christian Heinrich [Fri, 20 Jul 2018 21:20:25 +0000 (23:20 +0200)]
[KERNEL] struct -> class to match it's declaration
This was previously declared as a class, so just
do the same here.
Frederic Suter [Fri, 20 Jul 2018 19:58:42 +0000 (21:58 +0200)]
boolification
Frederic Suter [Fri, 20 Jul 2018 18:34:49 +0000 (20:34 +0200)]
allow to name an Exec
Frederic Suter [Fri, 20 Jul 2018 18:29:57 +0000 (20:29 +0200)]
fix comment in example
Frederic Suter [Fri, 20 Jul 2018 17:36:22 +0000 (19:36 +0200)]
a bit more merging
Frederic Suter [Fri, 20 Jul 2018 12:29:05 +0000 (14:29 +0200)]
when an activity is complete, nothing remains...
Frederic Suter [Fri, 20 Jul 2018 11:51:11 +0000 (13:51 +0200)]
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
Frederic Suter [Fri, 20 Jul 2018 11:48:14 +0000 (13:48 +0200)]
use our new toys
Martin Quinson [Fri, 20 Jul 2018 11:16:42 +0000 (13:16 +0200)]
Call ExecImpl::on_completion() before starting to destroy it
Frederic Suter [Fri, 20 Jul 2018 07:36:20 +0000 (09:36 +0200)]
[noci] fix #111
Christian Heinrich [Thu, 19 Jul 2018 09:25:56 +0000 (11:25 +0200)]
[S4U] Cosmetics
Christian Heinrich [Thu, 19 Jul 2018 12:17:08 +0000 (14:17 +0200)]
[KERNEL] Check if surf_action_ is nullptr
This is also done in the other methods, so we
should do that here as well.
Arnaud Giersch [Thu, 19 Jul 2018 12:16:54 +0000 (14:16 +0200)]
Disable mpich3 tests with valgrind on jenkins.
They're taking too long (1h 47min and still counting...).
Arnaud Giersch [Thu, 19 Jul 2018 08:56:27 +0000 (10:56 +0200)]
Enable valgrind on mpich3 tests.
Arnaud Giersch [Thu, 19 Jul 2018 08:54:02 +0000 (10:54 +0200)]
Add option -wrapper to mpich3 runtests.
Martin Quinson [Wed, 18 Jul 2018 23:08:10 +0000 (01:08 +0200)]
Allow other libraries to react to the --help flag, too
When finding --help on the command line, simgrid usually stops right
after displaying its help message but some libraries using SimGrid
want to display their own help message before the end of the world.
Now, they can use the little sg_config_continue_after_help() function
to have SimGrid not stopping after dealing with the --help flag.
(fix #93)
Martin Quinson [Wed, 18 Jul 2018 22:54:05 +0000 (00:54 +0200)]
this is a boolean
Martin Quinson [Wed, 18 Jul 2018 20:47:08 +0000 (22:47 +0200)]
snake_case simix::contextes
Martin Quinson [Wed, 18 Jul 2018 20:40:44 +0000 (22:40 +0200)]
cut some useless includes
Martin Quinson [Wed, 18 Jul 2018 20:32:44 +0000 (22:32 +0200)]
s/xbt_os_get_numcores()/std::thread::hardware_concurrency()/
Martin Quinson [Wed, 18 Jul 2018 20:28:45 +0000 (22:28 +0200)]
get rid of xbt_os_thread_yield() using C++11
Martin Quinson [Wed, 18 Jul 2018 20:25:14 +0000 (22:25 +0200)]
Remove portability wrapper to condition variables
Martin Quinson [Wed, 18 Jul 2018 20:19:37 +0000 (22:19 +0200)]
reimplement parmap with C++11 mutex and cond
Martin Quinson [Wed, 18 Jul 2018 20:03:26 +0000 (22:03 +0200)]
use std::mutex instead of xbt_os_mutex_t in simix
Martin Quinson [Wed, 18 Jul 2018 19:34:02 +0000 (21:34 +0200)]
fix makedist
Martin Quinson [Wed, 18 Jul 2018 19:21:33 +0000 (21:21 +0200)]
we don't need thread_specific anymore
Martin Quinson [Wed, 18 Jul 2018 19:08:40 +0000 (21:08 +0200)]
reimplement the parallel contextes with C++11 w/o xbt_os_thread_set_specific()
Martin Quinson [Wed, 18 Jul 2018 18:46:28 +0000 (20:46 +0200)]
thread_local is part of C++11, nowadays
Christian Heinrich [Wed, 16 May 2018 13:23:15 +0000 (15:23 +0200)]
[SMPI/LB] Add XBT_PUBLIC to load_balancer.h declarations
Christian Heinrich [Tue, 17 Jul 2018 08:29:21 +0000 (10:29 +0200)]
[ENERGY] Don't halt, just emit warning in special case
Even though 'AllCores' and 'OneCore' are the same in the
special case of #cores == 1, just go with the OneCore value.
This makes it much simpler to play around with the platform
without having to change the power profile each time.
Christian Heinrich [Wed, 18 Jul 2018 10:51:03 +0000 (12:51 +0200)]
[XBT] Config::get_name -> Make 'this' const
This is not the return value that is const'ed,
but just shows that this method does not change the object.
Christian Heinrich [Wed, 18 Jul 2018 09:07:41 +0000 (11:07 +0200)]
[KERNEL] Fix grammar in a comment
Christian Heinrich [Tue, 17 Jul 2018 11:56:33 +0000 (13:56 +0200)]
[HostLoad] Add total idle time
The 'normal' idle time can (and does) get reset, but
it is interesting to know how much a host idled until
now in total.
Christian Heinrich [Tue, 17 Jul 2018 11:44:52 +0000 (13:44 +0200)]
[SMPI/REPLAY] Fix issues with daemons
When daemons are running, process-id's of the ranks don't
start at 1. Here, we insert the pid's of the actual actors.
Arnaud Giersch [Wed, 18 Jul 2018 11:47:14 +0000 (13:47 +0200)]
Be less specific in valgrind suppression.
Arnaud Giersch [Wed, 18 Jul 2018 09:45:44 +0000 (11:45 +0200)]
Simplify memory handling.
Arnaud Giersch [Wed, 18 Jul 2018 09:21:17 +0000 (11:21 +0200)]
Memory leak.
Martin Quinson [Wed, 18 Jul 2018 06:09:00 +0000 (08:09 +0200)]
snake_case s4u API in the example documentation
Martin Quinson [Tue, 17 Jul 2018 23:58:56 +0000 (01:58 +0200)]
doxygen: rework the s4u header
Martin Quinson [Tue, 17 Jul 2018 23:51:00 +0000 (01:51 +0200)]
doxygen: uniformity in command markers (@ vs. \)
Martin Quinson [Tue, 17 Jul 2018 22:26:36 +0000 (00:26 +0200)]
doxygen: better handling of deprecated symbols
Martin Quinson [Tue, 17 Jul 2018 21:36:03 +0000 (23:36 +0200)]
my_valgrind.pl: pass keep-temps to smpirun so that valgrind can analyse the binaries on memleaks
Martin Quinson [Tue, 17 Jul 2018 21:18:13 +0000 (23:18 +0200)]
cmake: stop patching tesh in FindValgrind, that's too ugly