1#ifndef FPMAS_RANDOM_LB_H
2#define FPMAS_RANDOM_LB_H
12namespace fpmas {
namespace graph {
40 : generator(comm), random_rank(0, comm.getSize()-1) {
89 return balance(nodes, {}, partition_mode);
105 for(
auto node : nodes) {
106 partition.insert({node.first, random_rank(generator)});
Definition: communication.h:251
Definition: load_balancing.h:47
Definition: load_balancing.h:92
Definition: random_load_balancing.h:27
RandomLoadBalancing(api::communication::MpiCommunicator &comm)
Definition: random_load_balancing.h:39
PartitionMap balance(api::graph::NodeMap< T > nodes) override
Definition: random_load_balancing.h:82
Definition: generator.h:322
Definition: distribution.h:24
std::unordered_map< DistributedId, int, api::graph::IdHash< DistributedId > > PartitionMap
Definition: load_balancing.h:19
PartitionMode
Definition: load_balancing.h:30
@ PARTITION
Definition: load_balancing.h:35
typename graph::Graph< graph::DistributedNode< T >, graph::DistributedEdge< T > >::NodeMap NodeMap
Definition: load_balancing.h:25