#ifndef SMPI_PRIVATE_HPP
#define SMPI_PRIVATE_HPP
+#include "include/xbt/config.hpp"
#include "simgrid/msg.h" // msg_bar_t
#include "smpi/smpi.h"
#include "src/instr/instr_smpi.hpp"
typedef SMPI_Dist_Graph_topology* MPIR_Dist_Graph_Topology;
XBT_PRIVATE SMPI_Process* smpi_process();
-XBT_PRIVATE SMPI_Process* smpi_process_remote(int index);
+XBT_PRIVATE SMPI_Process* smpi_process_remote(simgrid::s4u::ActorPtr actor);
XBT_PRIVATE int smpi_process_count();
-XBT_PRIVATE void smpi_deployment_register_process(const char* instance_id, int rank, int index);
+XBT_PRIVATE void smpi_deployment_register_process(const char* instance_id, int rank, simgrid::s4u::ActorPtr actor);
XBT_PRIVATE MPI_Comm* smpi_deployment_comm_world(const char* instance_id);
XBT_PRIVATE msg_bar_t smpi_deployment_finalization_barrier(const char* instance_id);
XBT_PRIVATE void smpi_deployment_cleanup_instances();
};
typedef s_smpi_privatization_region_t* smpi_privatization_region_t;
-// extern XBT_PRIVATE smpi_privatization_region_t smpi_privatization_regions;
extern XBT_PRIVATE int smpi_loaded_page;
extern XBT_PRIVATE int smpi_universe_size;
XBT_PRIVATE smpi_privatization_region_t smpi_init_global_memory_segment_process();
#endif
extern std::unordered_map<std::string, double> location2speedup;
+// TODO: Move this to the right location (if we keep this...)
+void smpi_add_process(simgrid::s4u::ActorPtr actor);
/** @brief Returns the last call location (filename, linenumber). Process-specific. */
extern "C" {
SMPI_PRIVATIZE_NONE = 0,
SMPI_PRIVATIZE_MMAP = 1,
SMPI_PRIVATIZE_DLOPEN = 2,
- SMPI_PRIVATIZE_DEFAULT = SMPI_PRIVATIZE_MMAP
+ SMPI_PRIVATIZE_DEFAULT = SMPI_PRIVATIZE_DLOPEN
};
extern XBT_PRIVATE int smpi_privatize_global_variables;