Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
3 years agocosmetics
Martin Quinson [Sat, 3 Dec 2016 21:02:20 +0000 (22:02 +0100)]
cosmetics

3 years agoupdate a teshfile that was affected by #123, which Fabien just fixed
Martin Quinson [Fri, 2 Dec 2016 22:59:06 +0000 (23:59 +0100)]
update a teshfile that was affected by #123, which Fabien just fixed

3 years agocall updateRemaining when the action is suspended (fix #123)
Fabien Chaix [Fri, 2 Dec 2016 13:30:57 +0000 (05:30 -0800)]
call updateRemaining when the action is suspended (fix #123)

if not, the LMM is giving the right results, but surf does not notice.

Thus the fix does not touch LMM, only surf_interface.cpp. Note that
suspend has the specificity that we cannot estimate when it will end.
Thus it does not seem appropriate to use the nextOccuringEventLazy
method which is essentially trying to find when will be the next step.
Instead I propose to call updateReaminingLazy from the suspend
function.

3 years agomake Boost.test optional, as I fail to find it on appveyor
Martin Quinson [Fri, 2 Dec 2016 22:27:06 +0000 (23:27 +0100)]
make Boost.test optional, as I fail to find it on appveyor

3 years agoplug an obvious memleak, bummer
Martin Quinson [Fri, 2 Dec 2016 08:10:37 +0000 (09:10 +0100)]
plug an obvious memleak, bummer

3 years agoAdd boost unit_test_framework to our dependencies
Martin Quinson [Thu, 1 Dec 2016 21:10:13 +0000 (22:10 +0100)]
Add boost unit_test_framework to our dependencies

3 years agoMerge branch 'master' of github.com:simgrid/simgrid
Martin Quinson [Thu, 1 Dec 2016 21:11:19 +0000 (22:11 +0100)]
Merge branch 'master' of github.com:simgrid/simgrid

3 years agoMerge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid
Martin Quinson [Thu, 1 Dec 2016 21:10:47 +0000 (22:10 +0100)]
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid

3 years agocosmetics
Martin Quinson [Thu, 1 Dec 2016 20:40:45 +0000 (21:40 +0100)]
cosmetics

3 years agomore informative assert message
Martin Quinson [Thu, 1 Dec 2016 20:10:09 +0000 (21:10 +0100)]
more informative assert message

3 years agoadd an EngineImpl, unused so far
Martin Quinson [Thu, 1 Dec 2016 20:09:29 +0000 (21:09 +0100)]
add an EngineImpl, unused so far

3 years agocosmetics (and stop using routing_platf)
Martin Quinson [Mon, 28 Nov 2016 22:36:27 +0000 (23:36 +0100)]
cosmetics (and stop using routing_platf)

3 years agogosh, so much cruft in this code
Martin Quinson [Mon, 28 Nov 2016 22:26:17 +0000 (23:26 +0100)]
gosh, so much cruft in this code

3 years agoMerge pull request #124 from mpoquet/master
Martin Quinson [Thu, 1 Dec 2016 19:45:56 +0000 (20:45 +0100)]
Merge pull request #124 from mpoquet/master

[Energy platform parsing] assert + memory leak

3 years agoMerge branch 'master' of https://github.com/mpoquet/simgrid
Millian Poquet [Wed, 30 Nov 2016 13:08:01 +0000 (14:08 +0100)]
Merge branch 'master' of https://github.com/mpoquet/simgrid

3 years agoEnergy: Fixed host parsing assertion + mem leak
Millian Poquet [Wed, 30 Nov 2016 12:58:18 +0000 (13:58 +0100)]
Energy: Fixed host parsing assertion + mem leak

When parsing the platform file with energy,
using the old watt description syntax
"watt_min:watt_max" instead of
"watt_idle:watt_min:watt_max" led to obscure
OOB error, the error message should now be
clearer.

Also found a little memory leak,
msg_idle was not freed.

3 years agodisable java for MC FreeBSD builds, as it breaks mmalloc
Augustin Degomme [Tue, 29 Nov 2016 17:12:45 +0000 (18:12 +0100)]
disable java for MC FreeBSD builds, as it breaks mmalloc

3 years agoOn Freebsd with clang > 3.8, sometimes we have a null name here.
degomme [Tue, 29 Nov 2016 14:09:12 +0000 (15:09 +0100)]
On Freebsd with clang > 3.8, sometimes we have a null name here.
Try to not segfault in this case.

3 years agofor some reason (const madness?) this lead to wrong names being printed.
degomme [Tue, 29 Nov 2016 11:56:29 +0000 (12:56 +0100)]
for some reason (const madness?) this lead to wrong names being printed.

3 years agoSwitch the event handling in the MC to libevent.
Matthieu Volat [Tue, 29 Nov 2016 11:21:46 +0000 (12:21 +0100)]
Switch the event handling in the MC to libevent.

This is a good alternative to provide a clean socket/signal
handling, which allows to finaly enable the MC on FreeBSD too. The
downside is that now libevent>=2 is necessary to build the model
checker.

Thanks to degomme@ for the mentoring ;)

3 years agoAdd more libraries to blacklist.
Matthieu Volat [Mon, 28 Nov 2016 14:09:18 +0000 (15:09 +0100)]
Add more libraries to blacklist.

FreeBSD system and LLVM related libraries.

3 years agoBSD/SysV ptrace resume addr is 1, not 0 like in linux.
Matthieu Volat [Mon, 28 Nov 2016 14:00:18 +0000 (15:00 +0100)]
BSD/SysV ptrace resume addr is 1, not 0 like in linux.

3 years agoimprove the debug logs produced by the route seeking mechanism
Martin Quinson [Mon, 28 Nov 2016 21:16:55 +0000 (22:16 +0100)]
improve the debug logs produced by the route seeking mechanism

3 years agoremove a ugly misplaced include
Martin Quinson [Mon, 28 Nov 2016 20:29:35 +0000 (21:29 +0100)]
remove a ugly misplaced include

3 years agoMerge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid
Martin Quinson [Mon, 28 Nov 2016 20:27:38 +0000 (21:27 +0100)]
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid

3 years agoFix umpire issues : MPI_Comm cannot be safely put inside an int
degomme [Mon, 28 Nov 2016 13:35:21 +0000 (14:35 +0100)]
Fix umpire issues : MPI_Comm cannot be safely put inside an int
Fix/Ignore some warnings as well

3 years agoMore ptrace portability in model checker.
Matthieu Volat [Sun, 27 Nov 2016 19:31:39 +0000 (20:31 +0100)]
More ptrace portability in model checker.

No PTRACE_O_TRACEEXIT equivalent in the original ptrace API, futher
work will indicate if this will be a problem.

Update message a bit when neither linux's or BSD's version are
available.

3 years agoMark shared libraries private clean pages as non-writable on FreeBSD.
Matthieu Volat [Fri, 25 Nov 2016 08:36:33 +0000 (09:36 +0100)]
Mark shared libraries private clean pages as non-writable on FreeBSD.

This is how persmissions are with Linux, and later simgrid identifies
mappings based on path and permissions, so the less restistance path
is to present things more linux-like.

3 years agoIn FreeBSD map backend, mark stack same as in Linux
Matthieu Volat [Thu, 17 Nov 2016 12:03:32 +0000 (13:03 +0100)]
In FreeBSD map backend, mark stack same as in Linux

3 years agoAdd support to retrieve FreeBSD ucontext registers.
Matthieu Volat [Tue, 15 Nov 2016 20:02:45 +0000 (21:02 +0100)]
Add support to retrieve FreeBSD ucontext registers.

Sadly, no universal method as it depend on the CPU and the system
is free to implement whatever storage it see fit. Leave a terminating
error message for the next system to get ported.

3 years agoAdd alternative to remap() in PageStore when not available.
Matthieu Volat [Tue, 15 Nov 2016 19:27:14 +0000 (20:27 +0100)]
Add alternative to remap() in PageStore when not available.

Code is a bit simplistic, having way to expand mappings but not
shrink them (so leaving them as they are), but it does the job.

3 years agoSet waitpid() for model-checked flags according to platform.
Matthieu Volat [Tue, 8 Nov 2016 10:29:59 +0000 (11:29 +0100)]
Set waitpid() for model-checked flags according to platform.

3 years agouse the right name of an option in the doc
Martin Quinson [Fri, 25 Nov 2016 09:59:53 +0000 (10:59 +0100)]
use the right name of an option in the doc

3 years agofix lua build
Martin Quinson [Wed, 23 Nov 2016 21:20:25 +0000 (22:20 +0100)]
fix lua build

3 years agomove VM into their namespace, and greatly reduce the amount of sg_host_get_name ...
Martin Quinson [Tue, 22 Nov 2016 23:24:20 +0000 (00:24 +0100)]
move VM into their namespace, and greatly reduce the amount of sg_host_get_name (prefer C++)

3 years agoinline yet another function in the VM
Martin Quinson [Tue, 22 Nov 2016 18:00:05 +0000 (19:00 +0100)]
inline yet another function in the VM

3 years agovm: kill some useless static functions
Martin Quinson [Tue, 22 Nov 2016 14:43:06 +0000 (15:43 +0100)]
vm: kill some useless static functions

3 years agoinline 4 more VM simcalls
Martin Quinson [Tue, 22 Nov 2016 11:09:23 +0000 (12:09 +0100)]
inline 4 more VM simcalls

I had to add some methods to s4u::VM, such as getRamsize()

3 years agoVM: improve error messages, and prefer C++ over MSG
Martin Quinson [Tue, 22 Nov 2016 10:44:32 +0000 (11:44 +0100)]
VM: improve error messages, and prefer C++ over MSG

3 years agoVM: keep inlining dummy functions
Martin Quinson [Tue, 22 Nov 2016 10:37:01 +0000 (11:37 +0100)]
VM: keep inlining dummy functions

I could merge my commits, but these changes are really hard to review
so don't make it more complex than needed

3 years agoVM: inline a function
Martin Quinson [Tue, 22 Nov 2016 10:30:20 +0000 (11:30 +0100)]
VM: inline a function

3 years agoVM: code simplification. Much more needed :(
Martin Quinson [Tue, 22 Nov 2016 10:15:04 +0000 (11:15 +0100)]
VM: code simplification. Much more needed :(

3 years agogive s4u::Host a cname() that returns a char*
Martin Quinson [Tue, 22 Nov 2016 09:54:09 +0000 (10:54 +0100)]
give s4u::Host a cname() that returns a char*

3 years agokill commented code, anonymous blocs and reindent. No real change
Martin Quinson [Tue, 22 Nov 2016 09:43:39 +0000 (10:43 +0100)]
kill commented code, anonymous blocs and reindent. No real change

3 years agoVM: getters should not be simcalls
Martin Quinson [Tue, 22 Nov 2016 09:37:07 +0000 (10:37 +0100)]
VM: getters should not be simcalls

Removing a simcall changes a bit the output, but that's ok

3 years agoThe VirtualMachineImpl is stored in VirtualMachine->pimpl_vm_, not in Host->pimpl_
Martin Quinson [Mon, 21 Nov 2016 07:33:38 +0000 (08:33 +0100)]
The VirtualMachineImpl is stored in VirtualMachine->pimpl_vm_, not in Host->pimpl_

3 years agostore the VMs by their interface, not by their implementation
Martin Quinson [Mon, 21 Nov 2016 07:22:08 +0000 (08:22 +0100)]
store the VMs by their interface, not by their implementation

3 years agodon't let the impl mess up with the fields of the interface
Martin Quinson [Mon, 21 Nov 2016 07:05:08 +0000 (08:05 +0100)]
don't let the impl mess up with the fields of the interface

3 years agoinline all VM tracing functions
Martin Quinson [Mon, 21 Nov 2016 01:34:54 +0000 (02:34 +0100)]
inline all VM tracing functions

3 years agocode simplification in the VM tracing code
Martin Quinson [Mon, 21 Nov 2016 01:21:05 +0000 (02:21 +0100)]
code simplification in the VM tracing code

3 years agothe VM constructor does not take any storage as parameter anyway
Martin Quinson [Mon, 21 Nov 2016 01:11:24 +0000 (02:11 +0100)]
the VM constructor does not take any storage as parameter anyway

3 years agothe implementation should not mess with the fields of the interface
Martin Quinson [Mon, 21 Nov 2016 01:09:45 +0000 (02:09 +0100)]
the implementation should not mess with the fields of the interface

3 years agoVM: move things from MSG to the C++ plugin
Martin Quinson [Mon, 21 Nov 2016 00:55:16 +0000 (01:55 +0100)]
VM: move things from MSG to the C++ plugin

3 years agocode simplification in the VM creation + inline a function
Martin Quinson [Mon, 21 Nov 2016 00:20:06 +0000 (01:20 +0100)]
code simplification in the VM creation + inline a function

3 years agoinline another VM function, and kill another one, unused
Martin Quinson [Sun, 20 Nov 2016 19:12:50 +0000 (20:12 +0100)]
inline another VM function, and kill another one, unused

3 years agohow many functions will I inline in the VMs????
Martin Quinson [Sun, 20 Nov 2016 18:42:50 +0000 (19:42 +0100)]
how many functions will I inline in the VMs????

3 years agoKill a VM-related function out of HostImpl
Martin Quinson [Sun, 20 Nov 2016 18:35:50 +0000 (19:35 +0100)]
Kill a VM-related function out of HostImpl

3 years ago(hopefully) fix the memory issues in the VMs
Martin Quinson [Sun, 20 Nov 2016 18:18:49 +0000 (19:18 +0100)]
(hopefully) fix the memory issues in the VMs

- Create and populate an host extension, used by the VM plugin to
  check the total amount of memory of that host and whether this host
  allows overcommiting VM above this value.
- This is a great step toward the pluginization of the VMs
- Unfortunately, there is no way to change these values for an host
  yet :-|

3 years agodon't use deprecated functions, and don't hide the corresponding warnings
Martin Quinson [Sun, 20 Nov 2016 18:13:19 +0000 (19:13 +0100)]
don't use deprecated functions, and don't hide the corresponding warnings

3 years agoavoid using C exceptions as valgrind don't like them too much
Martin Quinson [Sun, 20 Nov 2016 17:27:46 +0000 (18:27 +0100)]
avoid using C exceptions as valgrind don't like them too much

3 years agomore VM functions inlining (plus, getters don't need to be a simcall)
Martin Quinson [Sun, 20 Nov 2016 17:21:06 +0000 (18:21 +0100)]
more VM functions inlining (plus, getters don't need to be a simcall)

3 years agoinline 2 more VM functions, and kill a simcall
Martin Quinson [Sun, 20 Nov 2016 16:59:16 +0000 (17:59 +0100)]
inline 2 more VM functions, and kill a simcall

3 years agoinline a bunch of VM functions
Martin Quinson [Sat, 19 Nov 2016 21:54:47 +0000 (22:54 +0100)]
inline a bunch of VM functions

3 years agomore verbose checks
Martin Quinson [Fri, 18 Nov 2016 21:56:29 +0000 (22:56 +0100)]
more verbose checks

3 years agocosmetics
Martin Quinson [Fri, 18 Nov 2016 21:56:09 +0000 (22:56 +0100)]
cosmetics

3 years agotest to suspend an exec too
Martin Quinson [Fri, 18 Nov 2016 21:49:44 +0000 (22:49 +0100)]
test to suspend an exec too

3 years agofix copy/paste errors (found by sonar as dupplicated blocks ;)
Martin Quinson [Thu, 17 Nov 2016 22:18:17 +0000 (23:18 +0100)]
fix copy/paste errors (found by sonar as dupplicated blocks ;)

3 years agofinalize the traces in SD_exit also
Martin Quinson [Thu, 17 Nov 2016 10:59:43 +0000 (11:59 +0100)]
finalize the traces in SD_exit also

Thanks to Alexey Nazarenko for the bug report and the fix.

3 years agoMerge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid
Martin Quinson [Thu, 17 Nov 2016 10:41:46 +0000 (11:41 +0100)]
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid

3 years agokill useless simcall handlers
Martin Quinson [Thu, 17 Nov 2016 10:34:35 +0000 (11:34 +0100)]
kill useless simcall handlers

3 years agono need to know who's resuming an actor
Martin Quinson [Thu, 17 Nov 2016 10:23:26 +0000 (11:23 +0100)]
no need to know who's resuming an actor

3 years agokill 2 dumb functions in simix_vm
Martin Quinson [Thu, 17 Nov 2016 10:02:37 +0000 (11:02 +0100)]
kill 2 dumb functions in simix_vm

3 years agokill a bunch of brain-dead functions in surf
Martin Quinson [Thu, 17 Nov 2016 09:50:55 +0000 (10:50 +0100)]
kill a bunch of brain-dead functions in surf

3 years agoinline a stupid function
Martin Quinson [Thu, 17 Nov 2016 09:38:30 +0000 (10:38 +0100)]
inline a stupid function

3 years agodon't store the VM implem where the host stores its implem
Martin Quinson [Thu, 17 Nov 2016 09:34:54 +0000 (10:34 +0100)]
don't store the VM implem where the host stores its implem

3 years agoinline a stupid function
Martin Quinson [Thu, 17 Nov 2016 09:25:43 +0000 (10:25 +0100)]
inline a stupid function

3 years agomove an enum to the right location
Martin Quinson [Thu, 17 Nov 2016 09:19:26 +0000 (10:19 +0100)]
move an enum to the right location

3 years agonote for next time: try to not forget half of the commit when pushing.
degomme [Thu, 17 Nov 2016 05:46:57 +0000 (22:46 -0700)]
note for next time: try to not forget half of the commit when pushing.

3 years agoReplace deque by boost:circular_buffer_space_optimized for memory reasons.
degomme [Thu, 17 Nov 2016 05:05:48 +0000 (22:05 -0700)]
Replace deque by boost:circular_buffer_space_optimized for memory reasons.
Deques are pre-allocated to a specific size and use ~1KB of memory, even when empty.
As we need 2 deques per mailbox, this was quite a lot in the end.

3 years agofix dist
degomme [Wed, 16 Nov 2016 23:53:03 +0000 (16:53 -0700)]
fix dist

3 years agokill two more useless functions in VM
Martin Quinson [Wed, 16 Nov 2016 22:44:21 +0000 (23:44 +0100)]
kill two more useless functions in VM

3 years agokill 2 unused fields in MSG_Global o_O
Martin Quinson [Wed, 16 Nov 2016 22:36:21 +0000 (23:36 +0100)]
kill 2 unused fields in MSG_Global o_O

3 years agoremove unused functions in the VMs
Martin Quinson [Wed, 16 Nov 2016 22:32:35 +0000 (23:32 +0100)]
remove unused functions in the VMs

3 years agomove virtual machines to the directory src/plugins/vm
Martin Quinson [Wed, 16 Nov 2016 22:19:35 +0000 (23:19 +0100)]
move virtual machines to the directory src/plugins/vm

3 years agomove the VM-related data out of MSG's private data for hosts
Martin Quinson [Wed, 16 Nov 2016 21:49:18 +0000 (22:49 +0100)]
move the VM-related data out of MSG's private data for hosts

This is the beginning of turning the VMs into a separate plugin. I'm
sure that reconcentrating all VM code into a few files will greatly
simplify it.

This change is really messy because I did not want to be too intrusive
in msg_vm.c and had to expose much much of the VM internals for that.
It will be improved in the future (it cannot get any worse).

This reveals a little bug where the dirtyPages things of a VM that
runs on a host which turns down are not properly cleaned up. There is
nothing I can do right now as I don't have a onHostOff event or
something, so I simply spit a warning in this case. For now.

3 years agorename AsImpl::getRouteRecursive to AsImpl::getGlobalRoute (+doc improvment)
Martin Quinson [Wed, 16 Nov 2016 07:46:51 +0000 (08:46 +0100)]
rename AsImpl::getRouteRecursive to AsImpl::getGlobalRoute (+doc improvment)

3 years agorename As::getRouteAndLatency into As::getLocalRoute
Martin Quinson [Wed, 16 Nov 2016 07:28:21 +0000 (08:28 +0100)]
rename As::getRouteAndLatency into As::getLocalRoute

+ many small cleanups

3 years agoMerge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid
Martin Quinson [Wed, 16 Nov 2016 01:40:51 +0000 (02:40 +0100)]
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid

3 years agovarious small cosmetics in the routing
Martin Quinson [Wed, 16 Nov 2016 01:28:45 +0000 (02:28 +0100)]
various small cosmetics in the routing

3 years agoreduce the visibility of some functions
Martin Quinson [Wed, 16 Nov 2016 01:12:36 +0000 (02:12 +0100)]
reduce the visibility of some functions

3 years agoreduce the visibility of one field
Martin Quinson [Wed, 16 Nov 2016 01:01:35 +0000 (02:01 +0100)]
reduce the visibility of one field

3 years agooops, add the previously documented option to the list.
degomme [Wed, 16 Nov 2016 00:55:39 +0000 (17:55 -0700)]
oops, add the previously documented option to the list.

3 years agoremove another now useless function from RoutingPlat
Martin Quinson [Wed, 16 Nov 2016 00:54:20 +0000 (01:54 +0100)]
remove another now useless function from RoutingPlat

3 years agoI switched to NS 3.26 locally
Martin Quinson [Wed, 16 Nov 2016 00:53:21 +0000 (01:53 +0100)]
I switched to NS 3.26 locally

3 years agoadd missing include (only for osx?)
degomme [Wed, 16 Nov 2016 00:50:00 +0000 (17:50 -0700)]
add missing include (only for osx?)

3 years agothat was useless.
degomme [Wed, 16 Nov 2016 00:42:16 +0000 (17:42 -0700)]
that was useless.

3 years agocode simplification: write the recursivity properly
Martin Quinson [Wed, 16 Nov 2016 00:40:07 +0000 (01:40 +0100)]
code simplification: write the recursivity properly

3 years agoDon't allocate 5KB per host created when it's not needed.
degomme [Wed, 16 Nov 2016 00:26:23 +0000 (17:26 -0700)]
Don't allocate 5KB per host created when it's not needed.
These were for VM and files only, which are optional. Instead they are now allocated when needed.

3 years agodocument new option
degomme [Wed, 16 Nov 2016 00:24:54 +0000 (17:24 -0700)]
document new option

3 years agounXBTize a bit
Martin Quinson [Wed, 16 Nov 2016 00:19:55 +0000 (01:19 +0100)]
unXBTize a bit