Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Change way Mailboxes are create, stored, and destroyed
authorSUTER Frederic <frederic.suter@cc.in2p3.fr>
Tue, 25 May 2021 14:13:40 +0000 (16:13 +0200)
committerSUTER Frederic <frederic.suter@cc.in2p3.fr>
Tue, 25 May 2021 14:13:40 +0000 (16:13 +0200)
commit0286ae4d1e43c141818b7456b47fd2855643f0e6
treec9e2020bff62491e31382920c03a5fc9ab714269
parente2f13c6eb4d0c1b07e1b32a75016431dd75a68d2
Change way Mailboxes are create, stored, and destroyed

- keep the global map in EngineImpl (not as a static global in
  MailboxImpl.cpp)
- Delete mailboxes in ~EngineImpl() and get rid of SIMIX_mailbox_exit
- replace MailboxImpl::by_name_or_null and
  MailboxImpl::by_name_or_create by Engine::mailbox_by_name_or_create
  + better match with what is done for hosts, links, and actors
  + Mailbox::by_name cause two searchs in the map. One to check if
    name already points to a mailbox (by_name_or_null) and if not
    search again before creating a new mailbox. As there is no
    Mailbox::by_name_or_null, just keep the latter.
- Revalidate a bunch of tests (message ordering mostly)
14 files changed:
examples/c/cloud-masterworker/cloud-masterworker.tesh
examples/c/dht-kademlia/dht-kademlia.tesh
examples/cpp/comm-ready/s4u-comm-ready.tesh
examples/cpp/comm-waitall/s4u-comm-waitall.tesh
examples/cpp/dht-kademlia/s4u-dht-kademlia.tesh
examples/smpi/smpi_s4u_masterworker/s4u_smpi.tesh
include/simgrid/s4u/Engine.hpp
src/kernel/EngineImpl.cpp
src/kernel/EngineImpl.hpp
src/kernel/activity/MailboxImpl.cpp
src/kernel/activity/MailboxImpl.hpp
src/s4u/s4u_Engine.cpp
src/s4u/s4u_Mailbox.cpp
src/simix/smx_global.cpp