* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
class Instance {
public:
Instance(const std::string name, int max_no_processes, int process_count, MPI_Comm comm,
class Instance {
public:
Instance(const std::string name, int max_no_processes, int process_count, MPI_Comm comm,
* \param name the reference name of the function.
* \param code the main mpi function (must have a int ..(int argc, char *argv[])) prototype
* \param num_processes the size of the instance we want to deploy
* \param name the reference name of the function.
* \param code the main mpi function (must have a int ..(int argc, char *argv[])) prototype
* \param num_processes the size of the instance we want to deploy
- Instance instance(std::string(name), num_processes, process_count, MPI_COMM_NULL, MSG_barrier_init(num_processes));
+ Instance instance(std::string(name), num_processes, process_count, MPI_COMM_NULL,
+ new simgrid::s4u::Barrier(num_processes));
MPI_Group group = new simgrid::smpi::Group(instance.size);
instance.comm_world = new simgrid::smpi::Comm(group, nullptr);
MPI_Attr_put(instance.comm_world, MPI_UNIVERSE_SIZE, reinterpret_cast<void*>(instance.size));
MPI_Group group = new simgrid::smpi::Group(instance.size);
instance.comm_world = new simgrid::smpi::Comm(group, nullptr);
MPI_Attr_put(instance.comm_world, MPI_UNIVERSE_SIZE, reinterpret_cast<void*>(instance.size));
void smpi_deployment_register_process(const std::string instance_id, int rank, simgrid::s4u::ActorPtr actor)
{
void smpi_deployment_register_process(const std::string instance_id, int rank, simgrid::s4u::ActorPtr actor)
{
void smpi_deployment_cleanup_instances(){
for (auto const& item : smpi_instances) {
Instance instance = item.second;
void smpi_deployment_cleanup_instances(){
for (auto const& item : smpi_instances) {
Instance instance = item.second;