Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
6 years agoAnother fix in regexp.
Arnaud Giersch [Fri, 30 Mar 2018 11:24:50 +0000 (13:24 +0200)]
Another fix in regexp.

An hyphen '-' cannot be escaped in bracket expressions, it should be put first
(or last). Anyway, it is not allowed for Fortan identifier, so simply remove it.

Also unescape underscores.

6 years agocosmetics in cpu_ti
Martin Quinson [Sat, 31 Mar 2018 15:52:26 +0000 (17:52 +0200)]
cosmetics in cpu_ti

6 years agohave the maxmin system create by itself what it needs for selective update
Martin Quinson [Sat, 31 Mar 2018 14:37:23 +0000 (16:37 +0200)]
have the maxmin system create by itself what it needs for selective update

Earlier, the modified_set was created externally by some models (but
not all). This lead to the interesting situation where we were asking
for selective update with the boolean field, but not getting this
because the modified_set was not existing.

Now that we get it when we ask for it, we detect that:
- the lmm_usage tests cannot activate selective_update because they
  don't have real actions, so they cannot track them to see which were
  modified.
- Storage is having selective updates, but with full algorithm (thus
  the change to Action::~Action() so that we deal when selective is on
  but not Lazy). No idea of whether this is the wanted behavior.

6 years agolmm::System: rename some fields, and initialize them at declaration, not in ctor
Martin Quinson [Sat, 31 Mar 2018 07:32:36 +0000 (09:32 +0200)]
lmm::System: rename some fields, and initialize them at declaration, not in ctor

6 years agoCpuCas01: set updateAlgo as initializer
Martin Quinson [Fri, 30 Mar 2018 23:13:57 +0000 (01:13 +0200)]
CpuCas01: set updateAlgo as initializer

My goal here is to make updateAlgo a constant in each Model object.

6 years agocleanup the declaration and handling of the cpu/optim option
Martin Quinson [Fri, 30 Mar 2018 23:00:17 +0000 (01:00 +0200)]
cleanup the declaration and handling of the cpu/optim option

6 years agoconfig::Flag: allow to pass a map of the valid values
Martin Quinson [Fri, 30 Mar 2018 22:56:58 +0000 (00:56 +0200)]
config::Flag: allow to pass a map of the valid values

6 years agoreduce the visibility of xbt/config.hpp file to the cpp that really need it
Martin Quinson [Fri, 30 Mar 2018 22:46:01 +0000 (00:46 +0200)]
reduce the visibility of xbt/config.hpp file to the cpp that really need it

6 years agoMerge branch 'master' of github.com:simgrid/simgrid
Martin Quinson [Fri, 30 Mar 2018 22:15:57 +0000 (00:15 +0200)]
Merge branch 'master' of github.com:simgrid/simgrid

6 years agocosmetics
Martin Quinson [Fri, 30 Mar 2018 22:14:51 +0000 (00:14 +0200)]
cosmetics

6 years agoMerge pull request #259 from simgrid/configfix
Martin Quinson [Fri, 30 Mar 2018 22:13:35 +0000 (00:13 +0200)]
Merge pull request #259 from simgrid/configfix

config: fix declareFlag template

6 years agoconfig: fix declareFlag template
Gabriel Corona [Fri, 30 Mar 2018 21:59:02 +0000 (23:59 +0200)]
config: fix declareFlag template

6 years agochange a fixme into an assert
Martin Quinson [Fri, 30 Mar 2018 18:44:58 +0000 (20:44 +0200)]
change a fixme into an assert

6 years agovarious sonar fixes
Martin Quinson [Fri, 30 Mar 2018 17:47:00 +0000 (19:47 +0200)]
various sonar fixes

- namespaces cannot be uppercased
- classes with a virtual method should have a virtual destructor
- add the missing explicit keyworlds
- each identifier on its line

6 years agofix regexp. again.
degomme [Fri, 30 Mar 2018 11:08:21 +0000 (13:08 +0200)]
fix regexp. again.

6 years agofix regexp
degomme [Fri, 30 Mar 2018 09:45:00 +0000 (11:45 +0200)]
fix regexp

6 years agoMove variable definition in cpp file.
Arnaud Giersch [Thu, 29 Mar 2018 19:38:58 +0000 (21:38 +0200)]
Move variable definition in cpp file.

6 years agoFix comment.
Arnaud Giersch [Thu, 29 Mar 2018 12:04:00 +0000 (14:04 +0200)]
Fix comment.

6 years agoFix memory leak.
Arnaud Giersch [Thu, 29 Mar 2018 10:04:06 +0000 (12:04 +0200)]
Fix memory leak.

6 years agodon't link_set after link_add to not erase the -shared flag
Martin Quinson [Fri, 30 Mar 2018 06:36:29 +0000 (08:36 +0200)]
don't link_set after link_add to not erase the -shared flag

6 years agobe verbose when the SMPI_PRETEND_CC trick is activated
Martin Quinson [Fri, 30 Mar 2018 06:05:11 +0000 (08:05 +0200)]
be verbose when the SMPI_PRETEND_CC trick is activated

6 years agosmpicc: don't add -shared when SMPI_PRETEND_CC is on
Martin Quinson [Thu, 29 Mar 2018 21:31:16 +0000 (23:31 +0200)]
smpicc: don't add -shared when SMPI_PRETEND_CC is on

all mpi programs are compiled in the -shared binary model so that we
can load them with dlopen afterward. But shared binaries cannot be run
by themselves, which is a problem to ./configure that wants to ensure
that mpicc is a real compiler (not a cross-compiler) by executing some
stupid code of its own.

Before the introduction of dlopen as a privatization mechanism, we
used to prevent the binary doing weird things when SMPI_PRETEND_CC was
defined. Now, we extend this mecanism for our compiler wrapers to play
safe in this case.

6 years agoadd gnu+11 flags to smpicxx as this seems needed
degomme [Thu, 29 Mar 2018 13:53:27 +0000 (15:53 +0200)]
add gnu+11 flags to smpicxx as this seems needed

6 years agoUse C++ style casts.
Arnaud Giersch [Wed, 28 Mar 2018 20:58:31 +0000 (22:58 +0200)]
Use C++ style casts.

6 years agoIt won't compile without C++ anyway.
Arnaud Giersch [Wed, 28 Mar 2018 20:45:57 +0000 (22:45 +0200)]
It won't compile without C++ anyway.

6 years agoVariables are already declared in surf_interface.hpp.
Arnaud Giersch [Wed, 28 Mar 2018 20:25:25 +0000 (22:25 +0200)]
Variables are already declared in surf_interface.hpp.

6 years agoFile surf.hpp is C++ only. Remove SG_BEGIN/END_DECL.
Arnaud Giersch [Wed, 28 Mar 2018 20:22:12 +0000 (22:22 +0200)]
File surf.hpp is C++ only.  Remove SG_BEGIN/END_DECL.

6 years agoFunction surf_get_clock() is already declared in surf.hpp.
Arnaud Giersch [Wed, 28 Mar 2018 20:21:27 +0000 (22:21 +0200)]
Function surf_get_clock() is already declared in surf.hpp.

6 years agoprefer this_actor:: to Actor::self()->
Martin Quinson [Wed, 28 Mar 2018 20:39:44 +0000 (22:39 +0200)]
prefer this_actor:: to Actor::self()->

6 years agobetter approximation of a typed #define
Martin Quinson [Wed, 28 Mar 2018 20:00:40 +0000 (22:00 +0200)]
better approximation of a typed #define

6 years agoforgot to rename this one
Martin Quinson [Wed, 28 Mar 2018 08:14:47 +0000 (10:14 +0200)]
forgot to rename this one

6 years ago[SMPI] Replay: Fix datatype initialization
Christian Heinrich [Wed, 28 Mar 2018 19:53:50 +0000 (21:53 +0200)]
[SMPI] Replay: Fix datatype initialization

6 years ago[SMPI] Fix branch conditions
Christian Heinrich [Wed, 28 Mar 2018 19:35:58 +0000 (21:35 +0200)]
[SMPI] Fix branch conditions

6 years agoCompile and link smpi_replay with smpicxx.
Arnaud Giersch [Wed, 28 Mar 2018 18:13:11 +0000 (20:13 +0200)]
Compile and link smpi_replay with smpicxx.

6 years agoUse standard __func__ instead of __FUNCTION__.
Arnaud Giersch [Wed, 28 Mar 2018 17:27:00 +0000 (19:27 +0200)]
Use standard __func__ instead of __FUNCTION__.

6 years agoFix format.
Arnaud Giersch [Wed, 28 Mar 2018 17:24:42 +0000 (19:24 +0200)]
Fix format.

6 years ago#include <string>
Arnaud Giersch [Wed, 28 Mar 2018 17:20:31 +0000 (19:20 +0200)]
#include <string>

6 years agoRemove std::move.
Arnaud Giersch [Wed, 28 Mar 2018 15:57:55 +0000 (17:57 +0200)]
Remove std::move.

According to clang:
src/xbt/xbt_replay.cpp:123:38: error: moving a temporary object prevents copy elision
      [-Werror,-Wpessimizing-move]
      simgrid::xbt::ReplayAction evt(std::move(simgrid::xbt::get_action(argv[0])));
                                     ^
src/xbt/xbt_replay.cpp:123:38: note: remove std::move call here
      simgrid::xbt::ReplayAction evt(std::move(simgrid::xbt::get_action(argv[0])));
                                     ^~~~~~~~~~                                 ~
1 error generated.

6 years agoMerge branch 'master' of ssh://scm.gforge.inria.fr/gitroot/simgrid/simgrid
Arnaud Giersch [Wed, 28 Mar 2018 15:51:19 +0000 (17:51 +0200)]
Merge branch 'master' of ssh://scm.gforge.inria.fr/gitroot/simgrid/simgrid

6 years agoKill unused typedef.
Arnaud Giersch [Wed, 28 Mar 2018 15:50:49 +0000 (17:50 +0200)]
Kill unused typedef.

6 years ago[SMPI] Datatype: Make the dt id a std::string
Christian Heinrich [Wed, 28 Mar 2018 15:30:26 +0000 (17:30 +0200)]
[SMPI] Datatype: Make the dt id a std::string

Currently, the Datatype::encode() function returns a
const char*. Using a temporary object as returned from
std::to_string() would return a temporary memory address via
.c_str() and hence cannot be used.

Once encode has been moved to std::string, this could potentially
be an int again...

6 years ago[SMPI] Prohibit execution of negative flops
Christian Heinrich [Wed, 28 Mar 2018 11:37:59 +0000 (13:37 +0200)]
[SMPI] Prohibit execution of negative flops

This was often caused by smpi/host-speed:-1 because
in some cases, flops = duration * host-speed

I replaced one smpi/host-speed:-1 with smpi/simulate-computation:0
due to a brief conversation with Augustin Degomme today:

14:22 < degomme> host-speed -1 c'est une convention qu'on utilisait
14:22 < degomme> c'est synonyme de simulate_computation=0
14:22 < degomme> ou un truc du genre
14:22 < degomme> quand l'option n'existait pas .

6 years ago[SMPI] Rename (recv|send)_sum -> (recv|send)_size_sum
Christian Heinrich [Tue, 27 Mar 2018 21:51:58 +0000 (23:51 +0200)]
[SMPI] Rename (recv|send)_sum -> (recv|send)_size_sum

6 years ago[SMPI] Replay: C++-ify AllToAllV action
Christian Heinrich [Tue, 27 Mar 2018 21:49:54 +0000 (23:49 +0200)]
[SMPI] Replay: C++-ify AllToAllV action

6 years ago[SMPI] Replay: C++-ify reduceScatter action & change tesh
Christian Heinrich [Tue, 27 Mar 2018 21:34:50 +0000 (23:34 +0200)]
[SMPI] Replay: C++-ify reduceScatter action & change tesh

These modifications also required to adapt the tesh:
Before, the computation value in comp_size was stored in an
integer, which was too small:

-2147483648 2905064291.000000
   ^^^^^    ^^^^^^^^^^^^^^^^^
    int          double (actual value from trace)

This means that all the test results were wrong and had
to be corrected.

6 years ago[SMPI] Replay: C++-ify scatterV action
Christian Heinrich [Tue, 27 Mar 2018 21:19:04 +0000 (23:19 +0200)]
[SMPI] Replay: C++-ify scatterV action

6 years ago[SMPI] Replay: C++-ify scatter actions
Christian Heinrich [Tue, 27 Mar 2018 19:02:32 +0000 (21:02 +0200)]
[SMPI] Replay: C++-ify scatter actions

6 years ago[SMPI] Replay: C++-ify gatherV and allGatherV actions
Christian Heinrich [Tue, 27 Mar 2018 18:49:25 +0000 (20:49 +0200)]
[SMPI] Replay: C++-ify gatherV and allGatherV actions

6 years ago[SMPI] Replay: Add name parameter to parser
Christian Heinrich [Tue, 27 Mar 2018 18:09:03 +0000 (20:09 +0200)]
[SMPI] Replay: Add name parameter to parser

6 years ago[SMPI] Replay: C++-ify (all)gather action
Christian Heinrich [Tue, 27 Mar 2018 17:19:31 +0000 (19:19 +0200)]
[SMPI] Replay: C++-ify (all)gather action

6 years ago[SMPI] Replay: C++-ify AllReduce & AllToAll actions
Christian Heinrich [Tue, 27 Mar 2018 16:59:44 +0000 (18:59 +0200)]
[SMPI] Replay: C++-ify AllReduce & AllToAll actions

6 years ago[SMPI] Replay: C++-ify (All)Reduce Action
Christian Heinrich [Tue, 27 Mar 2018 16:19:32 +0000 (18:19 +0200)]
[SMPI] Replay: C++-ify (All)Reduce Action

6 years ago[SMPI] Replay: Use correct buffer (recvbuffer)
Christian Heinrich [Tue, 27 Mar 2018 14:07:24 +0000 (16:07 +0200)]
[SMPI] Replay: Use correct buffer (recvbuffer)

6 years ago[SMPI] Replay: C++-ify bcast action
Christian Heinrich [Tue, 27 Mar 2018 13:56:06 +0000 (15:56 +0200)]
[SMPI] Replay: C++-ify bcast action

6 years ago[SMPI] Replay: Cleanup WaitAction a bit
Christian Heinrich [Tue, 27 Mar 2018 13:08:13 +0000 (15:08 +0200)]
[SMPI] Replay: Cleanup WaitAction a bit

6 years ago[SMPI] Replay: C++-ify barrier action
Christian Heinrich [Tue, 27 Mar 2018 13:06:55 +0000 (15:06 +0200)]
[SMPI] Replay: C++-ify barrier action

6 years ago[SMPI] Replay: C++-ify WaitAll Action
Christian Heinrich [Tue, 27 Mar 2018 13:01:39 +0000 (15:01 +0200)]
[SMPI] Replay: C++-ify WaitAll Action

6 years ago[SMPI] Replay: C++-ify Communicator-Actions
Christian Heinrich [Tue, 27 Mar 2018 12:12:04 +0000 (14:12 +0200)]
[SMPI] Replay: C++-ify Communicator-Actions

6 years ago[SMPI] Replay: C++-ify InitAction
Christian Heinrich [Tue, 27 Mar 2018 09:27:02 +0000 (11:27 +0200)]
[SMPI] Replay: C++-ify InitAction

6 years ago[SMPI] Replay: Cleanup WaitAction a bit
Christian Heinrich [Tue, 27 Mar 2018 09:24:28 +0000 (11:24 +0200)]
[SMPI] Replay: Cleanup WaitAction a bit

6 years ago[SMPI] Replay: Remove action_* functions
Christian Heinrich [Tue, 27 Mar 2018 08:55:51 +0000 (10:55 +0200)]
[SMPI] Replay: Remove action_* functions

Since we moved to std::function for the callbacks, it's much more
convenient to just use a lambda-function. The lambda itself is required
as we need to create a new object every time that action is executed
(and not one object that is shared between executions).

6 years ago[SMPI] Replay: C++-ify TestAction.
Christian Heinrich [Tue, 27 Mar 2018 08:54:03 +0000 (10:54 +0200)]
[SMPI] Replay: C++-ify TestAction.

6 years ago[SMPI] Replay: Remove static communicator_size variable
Christian Heinrich [Tue, 27 Mar 2018 08:51:57 +0000 (10:51 +0200)]
[SMPI] Replay: Remove static communicator_size variable

- This variable was unused, as all of the actions use something like
  MPI_COMM_WORLD->size() to obtain the size.

6 years ago[SMPI] Replay: Cosmetics
Christian Heinrich [Mon, 26 Mar 2018 17:57:28 +0000 (19:57 +0200)]
[SMPI] Replay: Cosmetics

6 years ago[SMPI] Replay: Make start_time a local variable
Christian Heinrich [Mon, 26 Mar 2018 17:56:36 +0000 (19:56 +0200)]
[SMPI] Replay: Make start_time a local variable

6 years ago[SMPI] Replay: C++-ify compute action
Christian Heinrich [Mon, 26 Mar 2018 16:53:00 +0000 (18:53 +0200)]
[SMPI] Replay: C++-ify compute action

6 years ago[SMPI] Replay: Use std::function for i/send, i/recv actions
Christian Heinrich [Mon, 26 Mar 2018 16:47:43 +0000 (18:47 +0200)]
[SMPI] Replay: Use std::function for i/send, i/recv actions

6 years ago[SMPI] Replay: Use std::bind / std::function for the wait action
Christian Heinrich [Mon, 26 Mar 2018 15:33:31 +0000 (17:33 +0200)]
[SMPI] Replay: Use std::bind / std::function for the wait action

6 years ago[SMPI] Replay: Move callbacks to std::function
Christian Heinrich [Mon, 26 Mar 2018 14:31:17 +0000 (16:31 +0200)]
[SMPI] Replay: Move callbacks to std::function

6 years ago[SMPI] Replay: C++-ify (I)Recv, (I)Send
Christian Heinrich [Mon, 26 Mar 2018 13:40:14 +0000 (15:40 +0200)]
[SMPI] Replay: C++-ify (I)Recv, (I)Send

6 years ago[SMPI] Replay: Classify the actions, start with Wait
Christian Heinrich [Mon, 26 Mar 2018 13:37:09 +0000 (15:37 +0200)]
[SMPI] Replay: Classify the actions, start with Wait

6 years ago[SMPI] Cosmetics: Remove 3 blank lines from smpi_global.cpp
Christian Heinrich [Wed, 21 Mar 2018 16:17:51 +0000 (17:17 +0100)]
[SMPI] Cosmetics: Remove 3 blank lines from smpi_global.cpp

6 years ago[SMPI] Deployment: Move function signatures to std::string
Christian Heinrich [Wed, 21 Mar 2018 15:50:36 +0000 (16:50 +0100)]
[SMPI] Deployment: Move function signatures to std::string

Except for the SMPI_app_instance_register, as it is part of the (C-)API.

6 years ago[SMPI] Remove all references to decode_datatype
Christian Heinrich [Wed, 21 Mar 2018 15:07:12 +0000 (16:07 +0100)]
[SMPI] Remove all references to decode_datatype

This is now calling simgrid::smpi::Datatype::decode(std::string) (I moved
the argument from char* to std::string)

sed -i -r -e 's@decode_datatype\((.*?)\)@simgrid::smpi::Datatype::decode(\1)@' src/smpi/internals/smpi_replay.cpp

6 years ago[SMPI] Datatype: Remove all encode_datatype calls
Christian Heinrich [Wed, 21 Mar 2018 14:53:05 +0000 (15:53 +0100)]
[SMPI] Datatype: Remove all encode_datatype calls

We now use simgrid::smpi::Datatype(dt) instead.

sed -i -r -e 's@encode_datatype\((\w+)\)@simgrid::smpi::Datatype::encode(\1)@' src/smpi/**/*.cpp

6 years ago[SMPI] Datatype: Make encode() a static member
Christian Heinrich [Wed, 21 Mar 2018 14:50:17 +0000 (15:50 +0100)]
[SMPI] Datatype: Make encode() a static member

MPI_DATATYPE_NULL may be passed to the encode function and we hence
need to check if the argument is null; if we just call
dt->encode(), we would always have to check before that call if dt is nullptr
This way, we just call Datatype::encode(dt)

6 years ago[SMPI] Remove class definition...
Christian Heinrich [Wed, 21 Mar 2018 13:38:40 +0000 (14:38 +0100)]
[SMPI] Remove class definition...

6 years ago[SMPI] Replay: Macro cosmetics
Christian Heinrich [Tue, 20 Mar 2018 21:07:18 +0000 (22:07 +0100)]
[SMPI] Replay: Macro cosmetics

6 years ago[REPLAY] Remove C-based Replay API
Christian Heinrich [Tue, 20 Mar 2018 16:31:30 +0000 (17:31 +0100)]
[REPLAY] Remove C-based Replay API

This is a huge commit, unfortunately, but it was not possible
to split it up easily without breaking the build.

This commit changes:

- Remove the 'const char* const* action' madness, replace by
  std::vector<string> (aliased as ReplayAction)
- Rename replay.c to replay.cpp
- Change CMake files
- Rewrite several macros to make them C++ compliant

6 years ago[SMPI] Replay: Move CHECK_ACTION_PARAMS macro to the top of the file
Christian Heinrich [Tue, 20 Mar 2018 13:26:27 +0000 (14:26 +0100)]
[SMPI] Replay: Move CHECK_ACTION_PARAMS macro to the top of the file

6 years ago[MSG/Replay] Delete old msg/replay code
Christian Heinrich [Tue, 20 Mar 2018 09:48:36 +0000 (10:48 +0100)]
[MSG/Replay] Delete old msg/replay code

6 years ago[XBT] Remove a new/delete pair from xbt-replay code
Christian Heinrich [Mon, 19 Mar 2018 18:18:48 +0000 (19:18 +0100)]
[XBT] Remove a new/delete pair from xbt-replay code

6 years ago[SMPI] Replay/Memory: Move tmp buffers from replay to memory
Christian Heinrich [Mon, 19 Mar 2018 16:34:57 +0000 (17:34 +0100)]
[SMPI] Replay/Memory: Move tmp buffers from replay to memory

This is not the best solution, especially since we need a new function
right now to free tmp buffers at the end of the replay. However, this
may make the replay a bit cleaner and we can find another solution during
this refactoring process.

6 years ago[SMPI] Replay: Use the right buffer (c&p error?)
Christian Heinrich [Mon, 19 Mar 2018 16:30:24 +0000 (17:30 +0100)]
[SMPI] Replay: Use the right buffer (c&p error?)

6 years ago[SMPI] Replay: Replace atoi by std::stoi
Christian Heinrich [Mon, 19 Mar 2018 13:47:25 +0000 (14:47 +0100)]
[SMPI] Replay: Replace atoi by std::stoi

6 years ago[SMPI] Replay/Allgatherv: Account for disps parameters in a replay trace
Christian Heinrich [Mon, 19 Mar 2018 13:30:24 +0000 (14:30 +0100)]
[SMPI] Replay/Allgatherv: Account for disps parameters in a replay trace

6 years ago[SMPI] Replace encode_datatype calls with dt->encode()
Christian Heinrich [Mon, 19 Mar 2018 13:29:27 +0000 (14:29 +0100)]
[SMPI] Replace encode_datatype calls with dt->encode()

6 years ago[SMPI] Datatypes: Make them all replayable
Christian Heinrich [Mon, 19 Mar 2018 13:24:10 +0000 (14:24 +0100)]
[SMPI] Datatypes: Make them all replayable

This commit assigns a unique id to all MPI_* datatypes.
This id is used for 'encoding' the datatype (for traces).

6 years ago[SMPI] Added comment regard Datatype::keyvals
Christian Heinrich [Thu, 15 Mar 2018 10:19:52 +0000 (11:19 +0100)]
[SMPI] Added comment regard Datatype::keyvals

6 years ago[SMPI] Replay: C++ify action_allgatherv
Christian Heinrich [Tue, 13 Mar 2018 22:23:07 +0000 (23:23 +0100)]
[SMPI] Replay: C++ify action_allgatherv

- Move to std::shared_ptr
- Use std::accumulate

6 years ago[SMPI] Replay: Move MPI_CURRENT_TYPE from global to local scope
Christian Heinrich [Tue, 13 Mar 2018 22:05:27 +0000 (23:05 +0100)]
[SMPI] Replay: Move MPI_CURRENT_TYPE from global to local scope

6 years ago[SMPI] Replay: C++ify action_gatherv
Christian Heinrich [Tue, 13 Mar 2018 17:51:02 +0000 (18:51 +0100)]
[SMPI] Replay: C++ify action_gatherv

- Move to std::shared_ptr
- Use std::accumulate

6 years ago[SMPI] Replay: C++ify action_scatterv
Christian Heinrich [Tue, 13 Mar 2018 17:47:02 +0000 (18:47 +0100)]
[SMPI] Replay: C++ify action_scatterv

- Move to std::shared_ptr
- Use std::accumulate

6 years ago[SMPI] Replay: Move action_reducescatter to std::shared_ptr
Christian Heinrich [Tue, 13 Mar 2018 17:42:51 +0000 (18:42 +0100)]
[SMPI] Replay: Move action_reducescatter to std::shared_ptr

6 years ago[SMPI] Replay: C++ify action_allToAllv
Christian Heinrich [Tue, 13 Mar 2018 17:40:31 +0000 (18:40 +0100)]
[SMPI] Replay: C++ify action_allToAllv

- Move to std::shared_ptr
- Use std::accumulate

6 years ago[INSTR] Move vector* to shared_ptr<vector>.
Christian Heinrich [Tue, 13 Mar 2018 17:19:21 +0000 (18:19 +0100)]
[INSTR] Move vector* to shared_ptr<vector>.

By initializing an object, for instance of type VarCollTIData,
the vectors containing receive and send counts were deleted
when the TI object was deleted. This is unexpected by a 'normal'
user - by accepting shared_ptrs, this can be ameliorated.

The constructor that still accepts vector* should be removed once
all initializations use the constructor accepting the shared_ptr.

6 years ago[SMPI] Move disps arrays to vectors
Christian Heinrich [Tue, 13 Mar 2018 14:04:02 +0000 (15:04 +0100)]
[SMPI] Move disps arrays to vectors

We now initialize the array immediately and just use disps.data()
to access the internal data array.

6 years ago[SMPI] Replay: Remove local variables from action_reducescatter
Christian Heinrich [Tue, 13 Mar 2018 13:59:20 +0000 (14:59 +0100)]
[SMPI] Replay: Remove local variables from action_reducescatter

6 years ago[SMPI] Replay: Remove unnecessary initialization
Christian Heinrich [Tue, 13 Mar 2018 13:19:38 +0000 (14:19 +0100)]
[SMPI] Replay: Remove unnecessary initialization

6 years ago[SMPI] Replay: Remove side effect from decode_datatype
Christian Heinrich [Tue, 13 Mar 2018 13:18:34 +0000 (14:18 +0100)]
[SMPI] Replay: Remove side effect from decode_datatype

The MPI_CURRENT_TYPE variable shouldn't be modified here.