Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of https://framagit.org/simgrid/simgrid
authorFrederic Suter <frederic.suter@cc.in2p3.fr>
Wed, 25 Sep 2019 15:36:39 +0000 (17:36 +0200)
committerFrederic Suter <frederic.suter@cc.in2p3.fr>
Wed, 25 Sep 2019 15:36:39 +0000 (17:36 +0200)
ChangeLog
src/smpi/include/smpi_actor.hpp
src/smpi/internals/smpi_actor.cpp

index 22c2c5d..55e1c9c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -60,6 +60,7 @@ Fixed bugs (FG#.. -> framagit bugs; FG!.. -> framagit merge requests):
  - FG!15: execute_flops now logs compute
  - FG!16: Fix the ns-3 bindings when several flows are simultaneously finishing
  - FG!17: ns-3: unblock the right number of communications + others issues
+ - FG!18: Improving the performance of the ns-3 bindings
  - GH#207: Error in the throughput of TCP transfer
 ----------------------------------------------------------------------------
 
index 95e3465..de11f68 100644 (file)
@@ -28,7 +28,7 @@ class ActorExt {
   std::string instance_id_;
   bool replaying_ = false; /* is the process replaying a trace */
   smpi_trace_call_location_t trace_call_loc_;
-  s4u::ActorPtr actor_                           = nullptr;
+  s4u::Actor* actor_                             = nullptr;
   smpi_privatization_region_t privatized_region_ = nullptr;
 #ifdef __linux__
   int optind_                                     = 0; /*for getopt replacement */
@@ -48,7 +48,7 @@ class ActorExt {
 public:
   static simgrid::xbt::Extension<simgrid::s4u::Actor, ActorExt> EXTENSION_ID;
 
-  explicit ActorExt(s4u::ActorPtr actor);
+  explicit ActorExt(s4u::Actor* actor);
   ActorExt(const ActorExt&) = delete;
   ActorExt& operator=(const ActorExt&) = delete;
   ~ActorExt();
index d363eb5..8e6f16c 100644 (file)
@@ -21,7 +21,7 @@ namespace simgrid {
 namespace smpi {
 simgrid::xbt::Extension<simgrid::s4u::Actor, ActorExt> ActorExt::EXTENSION_ID;
 
-ActorExt::ActorExt(s4u::ActorPtr actor) : actor_(actor)
+ActorExt::ActorExt(s4u::Actor* actor) : actor_(actor)
 {
   if (not simgrid::smpi::ActorExt::EXTENSION_ID.valid())
     simgrid::smpi::ActorExt::EXTENSION_ID = simgrid::s4u::Actor::extension_create<simgrid::smpi::ActorExt>();
@@ -55,8 +55,6 @@ ActorExt::ActorExt(s4u::ActorPtr actor) : actor_(actor)
 
 ActorExt::~ActorExt()
 {
-  TRACE_smpi_finalize(actor_->get_pid());
-
   if (comm_self_ != MPI_COMM_NULL)
     simgrid::smpi::Comm::destroy(comm_self_);
   if (comm_intra_ != MPI_COMM_NULL)
@@ -240,7 +238,7 @@ void ActorExt::init()
 
   // set the process attached to the mailbox
   ext->mailbox_small_->set_receiver(ext->actor_);
-  XBT_DEBUG("<%ld> SMPI process has been initialized: %p", ext->actor_->get_pid(), ext->actor_.get());
+  XBT_DEBUG("<%ld> SMPI process has been initialized: %p", ext->actor_->get_pid(), ext->actor_);
 }
 
 int ActorExt::get_optind()