1 #ifndef __SPLIT_STRATEGY__
2 #define __SPLIT_STRATEGY__
18 MPI_Comm comm = MPI_COMM_WORLD)
24 MPI_Comm_rank(comm, &
rank_);
32 "We need 3 or more cores to split!");
44 virtual void split() = 0;
std::vector< unsigned int > colorings_
defines comm splitting
virtual int getNrWorkerGroups() const =0
Get number of worker groups.
Role_t
roles a processor can attain
boost::shared_ptr< CmdArguments > CmdArguments_t
int leader_
every core specifies a leader (master is its own leader)
int poller_
every core can specifies a master
MPI_Comm comm_
communicator we are splitting
SplitStrategy(CmdArguments_t args, MPI_Comm comm=MPI_COMM_WORLD)
int getGlobalRank() const
Defines an interface for splitter strategy implementations.