30 MPI_Comm comm,
const graph::AdjacencyList<std::int64_t>& graph,
31 const std::vector<T>& node_disp,
const std::vector<T>& part);
39enum class strategy : std::uint8_t
67 double imbalance = 0.025,
int seed = 0);
88 std::array<int, 3> options = {1, 0, 5});
119 double imbalance = 1.02,
120 std::array<int, 3> options = {1, 0, 5});
154geom_partitioner(MPI_Comm comm,
int nparts, std::span<const double> x,
int gdim,
155 std::optional<std::span<const std::int32_t>> node_weights);
181 std::array<int, 3> options
200 double imbalance = 0.03,
201 bool suppress_output =
true);
Interfaces to KaHIP parallel partitioner.
Definition partitioners.h:188
graph::partition_fn partitioner(int mode=1, int seed=1, double imbalance=0.03, bool suppress_output=true)
Create a graph partitioning function that uses KaHIP.
Definition partitioners.cpp:837
Graph data structures and algorithms.
Definition AdjacencyList.h:23
std::function< graph::AdjacencyList< std::int32_t >( MPI_Comm, int, const AdjacencyList< std::int64_t > &, std::span< const double >, std::optional< std::span< const std::int32_t > >, std::optional< std::span< const std::int32_t > >, bool)> hybrid_partition_fn
Signature of functions for computing the parallel partitioning of a distributed graph using both its ...
Definition partition.h:102
std::function< graph::AdjacencyList< std::int32_t >( MPI_Comm, int, const AdjacencyList< std::int64_t > &, std::optional< std::span< const std::int32_t > >, std::optional< std::span< const std::int32_t > >, bool)> partition_fn
Signature of functions for computing the parallel partitioning of a distributed graph,...
Definition partition.h:38
graph::AdjacencyList< int > compute_destination_ranks(MPI_Comm comm, const graph::AdjacencyList< std::int64_t > &graph, const std::vector< T > &node_disp, const std::vector< T > &part)
Definition partitioners.cpp:45