Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
5 years agoMerge branch 'master' of git+ssh://scm.gforge.inria.fr/gitroot/simgrid/simgrid
kbaati [Fri, 24 Jul 2015 12:59:00 +0000 (14:59 +0200)]
Merge branch 'master' of git+ssh://scm.gforge.inria.fr/gitroot/simgrid/simgrid
update PerSimGrid in contrib/

5 years ago[psg] update: Makefile, run.sh,test.sh
kbaati [Fri, 24 Jul 2015 12:57:23 +0000 (14:57 +0200)]
[psg] update: Makefile, run.sh,test.sh

5 years agoMerge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid into tomerge
Martin Quinson [Fri, 24 Jul 2015 12:53:09 +0000 (14:53 +0200)]
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid into tomerge

Conflicts:
buildtools/Cmake/DefinePackages.cmake

5 years ago[mc] Do not trigger errors in MC_automaton_new_propositional_symbol() when MC is...
Gabriel Corona [Fri, 24 Jul 2015 11:05:15 +0000 (13:05 +0200)]
[mc] Do not trigger errors in MC_automaton_new_propositional_symbol() when MC is disabled

5 years ago[mc] Move the proposition declaration functions in mc_client_api.cpp
Gabriel Corona [Fri, 24 Jul 2015 11:01:21 +0000 (13:01 +0200)]
[mc] Move the proposition declaration functions in mc_client_api.cpp

5 years ago[mc] Cleanup/simplify liveness property automaton registration code
Gabriel Corona [Fri, 24 Jul 2015 10:55:35 +0000 (12:55 +0200)]
[mc] Cleanup/simplify liveness property automaton registration code

There were remants of the standalone mode.

5 years ago[mc] Remove MC_automaton_new_propositional_symbol_callback()
Gabriel Corona [Fri, 24 Jul 2015 10:28:04 +0000 (12:28 +0200)]
[mc] Remove MC_automaton_new_propositional_symbol_callback()

It was defined in the simulated-process API and but it could not be
used in this context: it was to be called in the model-checker
process.

Removed a lot of boilerplate callback management stuff: replaced with
C++-style code (passing lambdas/functors).

5 years ago[mc] Add some doc to the simulated-application-side API
Gabriel Corona [Fri, 24 Jul 2015 09:52:20 +0000 (11:52 +0200)]
[mc] Add some doc to the simulated-application-side API

5 years agopeersimgrid release 1.0
kbaati [Fri, 24 Jul 2015 10:24:03 +0000 (12:24 +0200)]
peersimgrid release 1.0

5 years ago[mc] Do not allow to xbt_new things with (non-trivial) constructors
Gabriel Corona [Fri, 24 Jul 2015 09:29:01 +0000 (11:29 +0200)]
[mc] Do not allow to xbt_new things with (non-trivial) constructors

5 years ago[mc] Remove HTML in a comment (this is ugly)
Gabriel Corona [Fri, 24 Jul 2015 07:48:00 +0000 (09:48 +0200)]
[mc] Remove HTML in a comment (this is ugly)

5 years ago[mc] Comment the binary search in ObjectInformation::find_function()
Gabriel Corona [Fri, 24 Jul 2015 07:47:11 +0000 (09:47 +0200)]
[mc] Comment the binary search in ObjectInformation::find_function()

5 years ago[mc] Fix out of range error in the binary search implementation
Gabriel Corona [Thu, 23 Jul 2015 14:20:20 +0000 (16:20 +0200)]
[mc] Fix out of range error in the binary search implementation

5 years ago[mc] Fix: can't build a std::string with nullptr
Gabriel Corona [Thu, 23 Jul 2015 12:44:19 +0000 (14:44 +0200)]
[mc] Fix: can't build a std::string with nullptr

5 years ago[mc] Give a real override if we know it's available
Gabriel Corona [Thu, 23 Jul 2015 12:26:42 +0000 (14:26 +0200)]
[mc] Give a real override if we know it's available

5 years ago[mc] Remove a lot of typedefs and typedef usage
Gabriel Corona [Thu, 23 Jul 2015 11:05:18 +0000 (13:05 +0200)]
[mc] Remove a lot of typedefs and typedef usage

Do not hide the real type of things behind typedefs. Some typedefs are
still there because they are used by C code.

5 years ago[mc] Remove remainings of an old type
Gabriel Corona [Thu, 23 Jul 2015 11:03:15 +0000 (13:03 +0200)]
[mc] Remove remainings of an old type

5 years ago[mc] Simplify lookup of maps
Gabriel Corona [Thu, 23 Jul 2015 09:52:33 +0000 (11:52 +0200)]
[mc] Simplify lookup of maps

5 years agoSimplify the process_execute simcall
Martin Quinson [Tue, 21 Jul 2015 23:17:46 +0000 (01:17 +0200)]
Simplify the process_execute simcall

Don't pass the host on which it has to run, as everybody pass
SIMIX_process_self(). Get the inner layers guess that themselves.

(also move a bunch of simcalls in the definition file. Sorry for the
noise)

5 years agomassive rename of simcalls: execution is related to a process, not to an host
Martin Quinson [Tue, 21 Jul 2015 22:53:17 +0000 (00:53 +0200)]
massive rename of simcalls: execution is related to a process, not to an host

5 years agomake simix more resilient to PEBKAC
Martin Quinson [Tue, 21 Jul 2015 22:32:24 +0000 (00:32 +0200)]
make simix more resilient to PEBKAC

5 years agoNew function: simcall_process_get_kill_time()
Martin Quinson [Tue, 21 Jul 2015 20:37:53 +0000 (22:37 +0200)]
New function: simcall_process_get_kill_time()

5 years agocosmetics in debug messages
Martin Quinson [Tue, 21 Jul 2015 20:36:28 +0000 (22:36 +0200)]
cosmetics in debug messages

5 years ago[Doc] Minor changes to introduction.doc
Christian Heinrich [Tue, 21 Jul 2015 14:06:01 +0000 (16:06 +0200)]
[Doc] Minor changes to introduction.doc

5 years ago[Platforms] Created folder 'storage' for storage specific platforms
Christian Heinrich [Tue, 21 Jul 2015 13:42:08 +0000 (15:42 +0200)]
[Platforms] Created folder 'storage' for storage specific platforms

5 years ago[Platforms] Added missing attribute in storage.xml
Christian Heinrich [Tue, 21 Jul 2015 13:24:04 +0000 (15:24 +0200)]
[Platforms] Added missing attribute in storage.xml

5 years ago[Platforms] Fixed indentation of storage.xml
Christian Heinrich [Tue, 21 Jul 2015 13:19:45 +0000 (15:19 +0200)]
[Platforms] Fixed indentation of storage.xml

5 years ago[mc] Remove useless/unused stuff
Gabriel Corona [Tue, 21 Jul 2015 13:48:30 +0000 (15:48 +0200)]
[mc] Remove useless/unused stuff

5 years ago[mc] Remove MC_post_process_functions()
Gabriel Corona [Tue, 21 Jul 2015 13:43:24 +0000 (15:43 +0200)]
[mc] Remove MC_post_process_functions()

5 years agosanitize the process_create simcall
Martin Quinson [Tue, 21 Jul 2015 12:50:27 +0000 (14:50 +0200)]
sanitize the process_create simcall

It was receiving a pointer to its result as first parameter, and it
now simply returns that result.

It could be further improved by returning a smx_process_t instead of a
void*, but our simcall mechanism does not seem to allow to cast results.

5 years ago[mc] Remove MC_dwarf_register_variable()
Gabriel Corona [Tue, 21 Jul 2015 13:02:00 +0000 (15:02 +0200)]
[mc] Remove MC_dwarf_register_variable()

5 years ago[mc] Avoid the O(n^2) incremental construction of sorted arrays of variables
Gabriel Corona [Tue, 21 Jul 2015 12:07:20 +0000 (14:07 +0200)]
[mc] Avoid the O(n^2) incremental construction of sorted arrays of variables

This is espacially slow now that the array contains the Variable
instead of the Variable*. Create it without order and sort if in O(n
log n) afterwards.

5 years ago[mc] Add comments on ObjectInformation
Gabriel Corona [Tue, 21 Jul 2015 11:11:56 +0000 (13:11 +0200)]
[mc] Add comments on ObjectInformation

5 years ago[mc] Make ObjectInformation::function_index a std::vector
Gabriel Corona [Tue, 21 Jul 2015 10:09:19 +0000 (12:09 +0200)]
[mc] Make ObjectInformation::function_index a std::vector

and while we're at it remove high_pc from the FunctionIndexEntry which
is not so useful.

5 years ago[mc] Make ObjectInformation::file_names a std::string
Gabriel Corona [Tue, 21 Jul 2015 07:54:38 +0000 (09:54 +0200)]
[mc] Make ObjectInformation::file_names a std::string

5 years ago[mc] Make Process::subprograms a std::unordered_map
Gabriel Corona [Mon, 20 Jul 2015 14:38:36 +0000 (16:38 +0200)]
[mc] Make Process::subprograms a std::unordered_map

5 years ago[mc] Make type_is an integer instead of a string and use std:: containers
Gabriel Corona [Mon, 20 Jul 2015 14:18:48 +0000 (16:18 +0200)]
[mc] Make type_is an integer instead of a string and use std:: containers

5 years ago[mc] Move ObjectInformation methods in mc_object_info.cpp
Gabriel Corona [Mon, 20 Jul 2015 13:42:47 +0000 (15:42 +0200)]
[mc] Move ObjectInformation methods in mc_object_info.cpp

5 years ago[mc] Move some declarations in mc_object_info.h
Gabriel Corona [Mon, 20 Jul 2015 13:11:52 +0000 (15:11 +0200)]
[mc] Move some declarations in mc_object_info.h

5 years ago[mc] Make Frame::variables, Frame::scopes and ObjectInformation::global_variables...
Gabriel Corona [Mon, 20 Jul 2015 12:18:28 +0000 (14:18 +0200)]
[mc] Make Frame::variables, Frame::scopes and ObjectInformation::global_variables std::vectors

5 years ago[mc] C++ location lists and expressions
Gabriel Corona [Mon, 20 Jul 2015 11:46:30 +0000 (13:46 +0200)]
[mc] C++ location lists and expressions

5 years ago[mc] C++ify Frame
Gabriel Corona [Mon, 20 Jul 2015 10:56:42 +0000 (12:56 +0200)]
[mc] C++ify Frame

5 years ago[mc] C++ify Variable
Gabriel Corona [Mon, 20 Jul 2015 09:47:54 +0000 (11:47 +0200)]
[mc] C++ify Variable

5 years ago[mc] OOPify/C++ify Type (cont)
Gabriel Corona [Mon, 20 Jul 2015 09:32:24 +0000 (11:32 +0200)]
[mc] OOPify/C++ify Type (cont)

Make members a std::vector.

5 years ago[mc] OOPify/C++ify Type (cont)
Gabriel Corona [Mon, 20 Jul 2015 09:14:41 +0000 (11:14 +0200)]
[mc] OOPify/C++ify Type (cont)

Make location expression a std::vector.

5 years ago[mc] OOPify/C++ify Type
Gabriel Corona [Fri, 17 Jul 2015 11:15:46 +0000 (13:15 +0200)]
[mc] OOPify/C++ify Type

5 years ago[mc] OOPify/C++ify ObjectInformation
Gabriel Corona [Fri, 17 Jul 2015 10:29:07 +0000 (12:29 +0200)]
[mc] OOPify/C++ify ObjectInformation

5 years ago[mc] C++ification of memory_map.cpp
Gabriel Corona [Fri, 17 Jul 2015 09:57:06 +0000 (11:57 +0200)]
[mc] C++ification of memory_map.cpp

5 years ago[mc] Cleanup/C++ification of {ModelChecker,PageStore}.{c,h}pp
Gabriel Corona [Fri, 17 Jul 2015 09:50:15 +0000 (11:50 +0200)]
[mc] Cleanup/C++ification of {ModelChecker,PageStore}.{c,h}pp

5 years ago[SURF] Callbacks now use the INITIALIZER macros
Christian Heinrich [Tue, 21 Jul 2015 10:20:22 +0000 (12:20 +0200)]
[SURF] Callbacks now use the INITIALIZER macros

- Callbacks such as s_sg_platf_link_cbarg_t were not at all
  correctly initialized before; this was fixed!

- Several initializers used valid C99 initializer syntax; however,
  this is not supported by C++. Hence, these initializers were changed
  to simple lists. See also
  https://gcc.gnu.org/onlinedocs/gcc/Designated-Inits.html
  for more details on this issue.

5 years agocosmetics in the check of library version vs. header version
Martin Quinson [Tue, 21 Jul 2015 10:04:53 +0000 (12:04 +0200)]
cosmetics in the check of library version vs. header version

5 years agoRemove a bunch of stuff from Host that was delegated to cpu anyway
Martin Quinson [Mon, 20 Jul 2015 23:27:19 +0000 (01:27 +0200)]
Remove a bunch of stuff from Host that was delegated to cpu anyway

- getSpeed()
- getAvailableSpeed()
- getCore()
- getCurrentPowerPeak();
- getPowerPeakAt(pstate_index);
- getNbPstates();
- {set,get}Pstate()

5 years agofurther doxygen cleanups
Martin Quinson [Mon, 20 Jul 2015 23:17:16 +0000 (01:17 +0200)]
further doxygen cleanups

5 years agocosmetics and documentation around VM parameters
Martin Quinson [Mon, 20 Jul 2015 23:06:25 +0000 (01:06 +0200)]
cosmetics and documentation around VM parameters

5 years agokill dead prototypes
Martin Quinson [Mon, 20 Jul 2015 22:26:18 +0000 (00:26 +0200)]
kill dead prototypes

5 years agomore rewrite of the doxygen
Martin Quinson [Mon, 20 Jul 2015 21:36:51 +0000 (23:36 +0200)]
more rewrite of the doxygen

5 years agoless void*, more sg_host_t
Martin Quinson [Mon, 20 Jul 2015 21:13:01 +0000 (23:13 +0200)]
less void*, more sg_host_t

5 years agoremove Host::communicate() (use network instead)
Martin Quinson [Mon, 20 Jul 2015 20:39:48 +0000 (22:39 +0200)]
remove Host::communicate() (use network instead)

This is my latest attempt to untangle things in surf: empty the Host
class and move everything to network/cpu/storage instead.

5 years agocode factorization
Martin Quinson [Mon, 20 Jul 2015 17:01:11 +0000 (19:01 +0200)]
code factorization

5 years agokill an unused field (+cosmetics)
Martin Quinson [Mon, 20 Jul 2015 16:56:50 +0000 (18:56 +0200)]
kill an unused field (+cosmetics)

5 years agoactually kill models' names
Martin Quinson [Mon, 20 Jul 2015 16:42:44 +0000 (18:42 +0200)]
actually kill models' names

5 years agoKill models getName() call sites.
Martin Quinson [Mon, 20 Jul 2015 16:14:21 +0000 (18:14 +0200)]
Kill models getName() call sites.

- Debug messages now depend on typeid(...).name(). Beware, the output
  may be compiler dependent.
- It was mainly used to have a specific handling of NS3, which method
  shareRessources() is not idempotent (ie, it actually moves the model
  in the future with no possibility of rolling it back afterward).

  So NS3->shareRessource() needs to be run after all other
  shareRessources, and before the updateState()s.

  Add a shareResourcesIsIdempotent() method to all models to detect
  whether we need to activate that strange behavior without having to
  rely on the model name.

- Removing models namesmakes Model pure virtual, possibly allowing
  diamon-shaped inheritance in L07, where we need only one model for
  CpuModel and NetworkModel.

5 years agotypo in comments
Martin Quinson [Mon, 20 Jul 2015 15:17:48 +0000 (17:17 +0200)]
typo in comments

5 years agokill an unused function
Martin Quinson [Mon, 20 Jul 2015 15:10:03 +0000 (17:10 +0200)]
kill an unused function

5 years agokill the sorry remainings of a parallelization of SURF
Martin Quinson [Mon, 20 Jul 2015 15:03:22 +0000 (17:03 +0200)]
kill the sorry remainings of a parallelization of SURF

5 years agoinline two static functions
Martin Quinson [Mon, 20 Jul 2015 14:51:50 +0000 (16:51 +0200)]
inline two static functions

5 years agoinitialize fields at declaration
Martin Quinson [Mon, 20 Jul 2015 13:51:54 +0000 (15:51 +0200)]
initialize fields at declaration

5 years agoRemove one of the many pimple: HostModel::p_cpuModel
Martin Quinson [Mon, 20 Jul 2015 13:41:28 +0000 (15:41 +0200)]
Remove one of the many pimple: HostModel::p_cpuModel

Gosh this code is hairly. This one came from the VM war, apparently.

5 years agokill unused function
Martin Quinson [Mon, 20 Jul 2015 13:07:45 +0000 (15:07 +0200)]
kill unused function

5 years agomake a pimple smaller
Martin Quinson [Mon, 20 Jul 2015 13:05:27 +0000 (15:05 +0200)]
make a pimple smaller

5 years agoreduce a bit the amount of void* (in L07)
Martin Quinson [Mon, 20 Jul 2015 12:27:45 +0000 (14:27 +0200)]
reduce a bit the amount of void* (in L07)

5 years agorename HostL07Action to L07Action
Martin Quinson [Mon, 20 Jul 2015 11:18:34 +0000 (13:18 +0200)]
rename HostL07Action to L07Action

L07 actions are indeed hybrid actions that are both CPU and network.

5 years agocode simplification
Martin Quinson [Mon, 20 Jul 2015 10:57:32 +0000 (12:57 +0200)]
code simplification

Also, add some comments

5 years agokill dead code: Action::recycle never got implemented
Martin Quinson [Mon, 20 Jul 2015 10:37:23 +0000 (12:37 +0200)]
kill dead code: Action::recycle never got implemented

5 years agomore cosmetics in doxygen comments
Martin Quinson [Mon, 20 Jul 2015 10:32:19 +0000 (12:32 +0200)]
more cosmetics in doxygen comments

5 years agocosmetics in the info message of L07 model starting up
Martin Quinson [Mon, 20 Jul 2015 10:10:05 +0000 (12:10 +0200)]
cosmetics in the info message of L07 model starting up

5 years agocosmetics in doxygen comments
Martin Quinson [Mon, 20 Jul 2015 09:53:13 +0000 (11:53 +0200)]
cosmetics in doxygen comments

And kill dead code and other useless cosmetics

5 years agoGet ride of ???Ptr types in C++: make pointers explicit
Martin Quinson [Mon, 20 Jul 2015 08:31:24 +0000 (10:31 +0200)]
Get ride of ???Ptr types in C++: make pointers explicit

Making pointers explicit is not what we did in C so far, but what we
did was a bad idea. It's easier to code when you know what is a
pointer and what is not.

Also:
- Convert a bunch of C-typecast into static_cast
- Kill some dead or dupplicated code

5 years agoinline a static function called only once
Martin Quinson [Sun, 19 Jul 2015 16:14:46 +0000 (18:14 +0200)]
inline a static function called only once

5 years agosort my TODO list :-(
Martin Quinson [Sun, 19 Jul 2015 15:33:34 +0000 (17:33 +0200)]
sort my TODO list :-(

plus cosmetics

5 years agoKill link_lib and have C++ handle the hashmap of all links
Martin Quinson [Sun, 19 Jul 2015 15:20:33 +0000 (17:20 +0200)]
Kill link_lib and have C++ handle the hashmap of all links

I did not manage to get SD_application_reinit() working, so this
function is currently disabled. I think that it should be removed
anyway.

5 years agokill some remainings of sd_link_t
Martin Quinson [Sun, 19 Jul 2015 06:49:55 +0000 (08:49 +0200)]
kill some remainings of sd_link_t

5 years agostart refreshing and fixing the GTNetS interface (WIP)
Martin Quinson [Sun, 19 Jul 2015 00:14:49 +0000 (02:14 +0200)]
start refreshing and fixing the GTNetS interface (WIP)

5 years agoOverhaul of NS3 support in SimGrid
Martin Quinson [Sat, 18 Jul 2015 21:35:18 +0000 (23:35 +0200)]
Overhaul of NS3 support in SimGrid

- NS3 is now found if installed from the default package (eg, Debian)
- If enable_ns3 and not found, cmake will fail
- 3 log channels were a bit too much
- Don't use NS3 log channels as it fails when running in Java somehow
- Drop support for ancient version of NS3 (3.10)
- Documentation refresh/rewrite
- Revalidate the tesh files (rounding errors on timings)

5 years agofix doxygen
Martin Quinson [Sat, 18 Jul 2015 20:50:57 +0000 (22:50 +0200)]
fix doxygen

5 years agosanitize C API of sg_link
Martin Quinson [Sat, 18 Jul 2015 17:19:25 +0000 (19:19 +0200)]
sanitize C API of sg_link

5 years agothere is no need for a SimDag's link type
Martin Quinson [Sat, 18 Jul 2015 17:13:29 +0000 (19:13 +0200)]
there is no need for a SimDag's link type

5 years agokill an unused field
Martin Quinson [Sat, 18 Jul 2015 16:33:56 +0000 (18:33 +0200)]
kill an unused field

5 years agokill LinkPtr type and make Link* explicit
Martin Quinson [Sat, 18 Jul 2015 16:31:51 +0000 (18:31 +0200)]
kill LinkPtr type and make Link* explicit

5 years agogive Link a proper public interface
Martin Quinson [Sat, 18 Jul 2015 16:13:30 +0000 (18:13 +0200)]
give Link a proper public interface

5 years agoRename NetworkLink type to Link
Martin Quinson [Sat, 18 Jul 2015 14:17:26 +0000 (16:17 +0200)]
Rename NetworkLink type to Link

Yup, that's an useless cosmetics.

5 years agocosmetics in the comments
Martin Quinson [Sat, 18 Jul 2015 13:56:02 +0000 (15:56 +0200)]
cosmetics in the comments

5 years agokill unused type definitions
Martin Quinson [Sat, 18 Jul 2015 13:46:02 +0000 (15:46 +0200)]
kill unused type definitions

5 years agomake SD_HOST_LEVEL private
Martin Quinson [Sat, 18 Jul 2015 13:25:34 +0000 (15:25 +0200)]
make SD_HOST_LEVEL private

5 years agoNew function: sg_hosts_as_dynar
Martin Quinson [Sat, 18 Jul 2015 12:26:59 +0000 (14:26 +0200)]
New function: sg_hosts_as_dynar

This was implemented several times, in each layer

5 years agocosmetics: make semantic more clear
Martin Quinson [Sat, 18 Jul 2015 10:52:10 +0000 (12:52 +0200)]
cosmetics: make semantic more clear

5 years ago[SGpp] make ROUTING_HOST_LEVEL private. That was painful
Martin Quinson [Sat, 18 Jul 2015 10:42:26 +0000 (12:42 +0200)]
[SGpp] make ROUTING_HOST_LEVEL private. That was painful

5 years agowhatever, eclipse
Martin Quinson [Sat, 18 Jul 2015 10:37:42 +0000 (12:37 +0200)]
whatever, eclipse

5 years agoUse MSG_host_by_name() instead of MSG_get_host_by_name()
Martin Quinson [Wed, 15 Jul 2015 08:30:02 +0000 (10:30 +0200)]
Use MSG_host_by_name() instead of MSG_get_host_by_name()

Both work, but the first is more coherent with the rest of the
interface.

5 years agokill simcall_host_get_by_name: nobody uses it anyway
Martin Quinson [Wed, 15 Jul 2015 08:05:38 +0000 (10:05 +0200)]
kill simcall_host_get_by_name: nobody uses it anyway