diff --git a/include/partition/partition_config.hpp b/include/partition/partition_config.hpp index 15e3cf926..3a7d6246f 100644 --- a/include/partition/partition_config.hpp +++ b/include/partition/partition_config.hpp @@ -49,7 +49,7 @@ struct PartitionConfig unsigned requested_num_threads; - std::size_t maximum_cell_size; + std::size_t minimum_cell_size; double balance; double boundary_factor; std::size_t num_optimizing_cuts; diff --git a/src/partition/partitioner.cpp b/src/partition/partitioner.cpp index a1026d61d..c9c1e7721 100644 --- a/src/partition/partitioner.cpp +++ b/src/partition/partitioner.cpp @@ -106,12 +106,12 @@ int Partitioner::Run(const PartitionConfig &config) makeBisectionGraph(compressed_node_based_graph.coordinates, adaptToBisectionEdge(std::move(compressed_node_based_graph.edges))); - util::Log() << " running partition: " << config.maximum_cell_size << " " << config.balance + util::Log() << " running partition: " << config.minimum_cell_size << " " << config.balance << " " << config.boundary_factor << " " << config.num_optimizing_cuts << " " << config.small_component_size << " # max_cell_size balance boundary cuts small_component_size"; RecursiveBisection recursive_bisection(graph, - config.maximum_cell_size, + config.minimum_cell_size, config.balance, config.boundary_factor, config.num_optimizing_cuts, @@ -162,8 +162,12 @@ int Partitioner::Run(const PartitionConfig &config) std::vector partitions; std::vector level_to_num_cells; - std::tie(partitions, level_to_num_cells) = bisectionToPartition(edge_based_partition_ids, - {128, 128 * 32, 128 * 32 * 16, 128 * 32 * 16 * 32}); + std::tie(partitions, level_to_num_cells) = + bisectionToPartition(edge_based_partition_ids, + {config.minimum_cell_size, + config.minimum_cell_size * 32, + config.minimum_cell_size * 32 * 16, + config.minimum_cell_size * 32 * 16 * 32}); TIMER_START(packed_mlp); MultiLevelPartition mlp{partitions, level_to_num_cells}; diff --git a/src/tools/partition.cpp b/src/tools/partition.cpp index 578147244..5f3fa74fd 100644 --- a/src/tools/partition.cpp +++ b/src/tools/partition.cpp @@ -38,9 +38,9 @@ return_code parseArguments(int argc, char *argv[], partition::PartitionConfig &p ->default_value(tbb::task_scheduler_init::default_num_threads()), "Number of threads to use") // - ("max-cell-size", - boost::program_options::value(&partition_config.maximum_cell_size) - ->default_value(4096), + ("min-cell-size", + boost::program_options::value(&partition_config.minimum_cell_size) + ->default_value(128), "Bisection termination citerion based on cell size") // ("balance",