From f0208cbc865822057196de77054163dbade48581 Mon Sep 17 00:00:00 2001 From: Loic Guegan Date: Wed, 5 May 2021 16:42:11 +0200 Subject: Create simulator --- simulator.cc | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 simulator.cc (limited to 'simulator.cc') diff --git a/simulator.cc b/simulator.cc new file mode 100644 index 0000000..508a31a --- /dev/null +++ b/simulator.cc @@ -0,0 +1,67 @@ +#include "simgrid/s4u.hpp" +#include +#include +#include +#include "inputs.hpp" +#include "xbt/log.h" + +XBT_LOG_NEW_DEFAULT_CATEGORY(simulator, "[DAO]"); + +typedef unsigned int u32; +u32 max_attempts=0; + +/// @brief Observation unit code +static void obs_unit(std::vector args); + + +int main(int argc, char **argv) { + + // Build engine + simgrid::s4u::Engine engine(&argc, argv); + engine.load_platform("platform.xml"); + + // Parse arguments + max_attempts=std::stoi(argv[1]); + + XBT_INFO("-------------------------------------------------"); + XBT_INFO("Sarting loosely coupled data dissemination experiments"); + XBT_INFO("Number of wake attempts per OU is %d",max_attempts); + XBT_INFO("-------------------------------------------------"); + + u32 nObsUnit=simgrid::s4u::Engine::get_instance()->get_host_count(); + for(u32 i=0;i args; + std::ostringstream ss; + ss<< "ou" < args) { + std::string selfName = simgrid::s4u::this_actor::get_host()->get_name(); + Inputs i(selfName); + simgrid::s4u::Mailbox *m = simgrid::s4u::Mailbox::by_name("medium"); + XBT_INFO("Deploying %s",selfName.c_str()); + + std::string msg("aloha"); + double wake_interval=i.wake_interval; + for(u32 i=0;i