parameterize cell size
This commit is contained in:
parent
8f9e980945
commit
8ad9a0aa9a
@ -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;
|
||||
|
@ -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<Partition> partitions;
|
||||
std::vector<std::uint32_t> 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};
|
||||
|
@ -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<std::size_t>(&partition_config.maximum_cell_size)
|
||||
->default_value(4096),
|
||||
("min-cell-size",
|
||||
boost::program_options::value<std::size_t>(&partition_config.minimum_cell_size)
|
||||
->default_value(128),
|
||||
"Bisection termination citerion based on cell size")
|
||||
//
|
||||
("balance",
|
||||
|
Loading…
Reference in New Issue
Block a user