4#include "fpmas/utils/perf.h"
18 fpmas::api::utils::perf::Probe& lb_algorithm_probe;
19 fpmas::api::model::LoadBalancing& lb;
31 fpmas::api::utils::perf::Probe& lb_algorithm_probe,
32 fpmas::api::model::LoadBalancing& lb
34 lb_algorithm_probe(lb_algorithm_probe),
49 fpmas::graph::NodeMap<fpmas::model::AgentPtr> node_map,
50 fpmas::api::graph::PartitionMode mode)
override;
56 fpmas::graph::NodeMap<fpmas::model::AgentPtr> node_map
58 return this->
balance(node_map, fpmas::api::graph::PARTITION);
70 fpmas::model::detail::LoadBalancingTask lb_task;
72 fpmas::api::utils::perf::Probe& graph_balance_probe;
80 fpmas::scheduler::Job
job;
94 fpmas::api::model::AgentGraph& graph,
95 fpmas::api::model::LoadBalancing& probed_lb,
96 fpmas::api::utils::perf::Probe& lb_algorithm_probe,
97 fpmas::api::utils::perf::Probe& graph_balance_probe
99 load_balancing_algorithm(lb_algorithm_probe, probed_lb),
104 lb_task(graph, load_balancing_algorithm),
105 graph_balance_probe(graph_balance_probe),
128 fpmas::api::utils::perf::Probe& sync_probe;
129 fpmas::model::detail::SynchronizeGraphTask sync_task;
139 fpmas::api::utils::perf::Probe& sync_probe,
140 fpmas::api::model::AgentGraph& graph);
fpmas::scheduler::Job job
Definition: probe.h:80
GraphBalanceProbe(fpmas::api::model::AgentGraph &graph, fpmas::api::model::LoadBalancing &probed_lb, fpmas::api::utils::perf::Probe &lb_algorithm_probe, fpmas::api::utils::perf::Probe &graph_balance_probe)
Definition: probe.h:93
fpmas::graph::PartitionMap balance(fpmas::graph::NodeMap< fpmas::model::AgentPtr > node_map, fpmas::api::graph::PartitionMode mode) override
LoadBalancingProbe(fpmas::api::utils::perf::Probe &lb_algorithm_probe, fpmas::api::model::LoadBalancing &lb)
Definition: probe.h:30
fpmas::graph::PartitionMap balance(fpmas::graph::NodeMap< fpmas::model::AgentPtr > node_map) override
Definition: probe.h:55
SyncProbeTask(fpmas::api::utils::perf::Probe &sync_probe, fpmas::api::model::AgentGraph &graph)