Skip to content

Commit

Permalink
extend sql_plottools output and remove one more parameter
Browse files Browse the repository at this point in the history
  • Loading branch information
N-Maas committed Aug 31, 2023
1 parent b04d998 commit 4a1ab97
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 8 deletions.
4 changes: 0 additions & 4 deletions mt-kahypar/io/command_line_options.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -453,10 +453,6 @@ namespace mt_kahypar {
po::value<double>((initial_partitioning ? &context.initial_partitioning.refinement.fm.unconstrained_upper_bound :
&context.refinement.fm.unconstrained_upper_bound))->value_name("<double>")->default_value(0.0),
"Still use upper limit for imbalance with unconstrained FM, expressed as a factor of the max part weight (default = 0 = no limit).")
((initial_partitioning ? "i-r-fm-rebalancing-use-violation-factor" : "r-fm-rebalancing-use-violation-factor"),
po::value<bool>((initial_partitioning ? &context.initial_partitioning.refinement.fm.rebalancing_use_violation_factor :
&context.refinement.fm.rebalancing_use_violation_factor))->value_name("<bool>")->default_value(true),
"Whether the rollback balance violation factor is also applied to rebalancing (for unconstrained FM).")
((initial_partitioning ? "i-r-fm-unconstrained-rounds" : "r-fm-unconstrained-rounds"),
po::value<size_t>((initial_partitioning ? &context.initial_partitioning.refinement.fm.unconstrained_rounds :
&context.refinement.fm.unconstrained_rounds))->value_name("<size_t>")->default_value(1),
Expand Down
11 changes: 11 additions & 0 deletions mt-kahypar/io/sql_plottools_serializer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,8 @@ std::string serialize(const PartitionedHypergraph& hypergraph,
<< " lp_algorithm=" << context.refinement.label_propagation.algorithm
<< " lp_maximum_iterations=" << context.refinement.label_propagation.maximum_iterations
<< " lp_rebalancing=" << std::boolalpha << context.refinement.label_propagation.rebalancing
<< " lp_unconstrained=" << std::boolalpha << context.refinement.label_propagation.unconstrained
<< " lp_relative_improvement_threshold=" << context.refinement.label_propagation.relative_improvement_threshold
<< " lp_hyperedge_size_activation_threshold=" << context.refinement.label_propagation.hyperedge_size_activation_threshold
<< " sync_lp_num_sub_rounds_sync_lp=" << context.refinement.deterministic_refinement.num_sub_rounds_sync_lp
<< " sync_lp_use_active_node_set=" << context.refinement.deterministic_refinement.use_active_node_set
Expand All @@ -130,6 +132,15 @@ std::string serialize(const PartitionedHypergraph& hypergraph,
<< " fm_time_limit_factor=" << context.refinement.fm.time_limit_factor
<< " fm_obey_minimal_parallelism=" << std::boolalpha << context.refinement.fm.obey_minimal_parallelism
<< " fm_shuffle=" << std::boolalpha << context.refinement.fm.shuffle
<< " fm_unconstrained_rounds=" << context.refinement.fm.unconstrained_rounds
<< " fm_treshold_border_node_inclusion=" << context.refinement.fm.treshold_border_node_inclusion
<< " fm_unconstrained_min_improvement=" << context.refinement.fm.unconstrained_min_improvement
<< " fm_unconstrained_upper_bound=" << context.refinement.fm.unconstrained_upper_bound
<< " fm_unconstrained_upper_bound_min=" << context.refinement.fm.unconstrained_upper_bound_min
<< " fm_imbalance_penalty_min=" << context.refinement.fm.imbalance_penalty_min
<< " fm_imbalance_penalty_max=" << context.refinement.fm.imbalance_penalty_max
<< " fm_activate_unconstrained_dynamically=" << std::boolalpha << context.refinement.fm.activate_unconstrained_dynamically
<< " fm_penalty_for_activation_test=" << context.refinement.fm.penalty_for_activation_test
<< " global_fm_use_global_fm=" << std::boolalpha << context.refinement.global_fm.use_global_fm
<< " global_fm_refine_until_no_improvement=" << std::boolalpha << context.refinement.global_fm.refine_until_no_improvement
<< " global_fm_num_seed_nodes=" << context.refinement.global_fm.num_seed_nodes
Expand Down
1 change: 0 additions & 1 deletion mt-kahypar/partition/context.h
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,6 @@ struct FMParameters {
mutable bool obey_minimal_parallelism = false;
bool release_nodes = true;

bool rebalancing_use_violation_factor = true;
double treshold_border_node_inclusion = 0.75;
double unconstrained_upper_bound = 0.0;

Expand Down
3 changes: 0 additions & 3 deletions mt-kahypar/partition/refinement/fm/multitry_kway_fm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -68,9 +68,6 @@ namespace mt_kahypar {
std::vector<HypernodeWeight> setupMaxPartWeights(const Context& context) {
double max_part_weight_scaling = context.refinement.fm.rollback_balance_violation_factor;
std::vector<HypernodeWeight> max_part_weights = context.partition.perfect_balance_part_weights;
if (!context.refinement.fm.rebalancing_use_violation_factor) {
max_part_weight_scaling = 1.0;
}
if (max_part_weight_scaling == 0.0) {
for (PartitionID i = 0; i < context.partition.k; ++i) {
max_part_weights[i] = std::numeric_limits<HypernodeWeight>::max();
Expand Down

0 comments on commit 4a1ab97

Please sign in to comment.