@@ -270,7 +270,6 @@ template <typename i_t, typename f_t>
270270void pseudo_costs_t <i_t , f_t >::update_pseudo_costs(mip_node_t <i_t , f_t >* node_ptr,
271271 f_t leaf_objective)
272272{
273- std::lock_guard<omp_mutex_t > lock (pseudo_cost_mutex[node_ptr->branch_var ]);
274273 const f_t change_in_obj = leaf_objective - node_ptr->lower_bound ;
275274 const f_t frac = node_ptr->branch_dir == rounding_direction_t ::DOWN
276275 ? node_ptr->fractional_val - std::floor (node_ptr->fractional_val )
@@ -296,8 +295,6 @@ void pseudo_costs_t<i_t, f_t>::initialized(i_t& num_initialized_down,
296295 pseudo_cost_up_avg = 0 ;
297296 const i_t n = pseudo_cost_sum_down.size ();
298297 for (i_t j = 0 ; j < n; j++) {
299- std::lock_guard<omp_mutex_t > lock (pseudo_cost_mutex[j]);
300-
301298 if (pseudo_cost_num_down[j] > 0 ) {
302299 num_initialized_down++;
303300 if (std::isfinite (pseudo_cost_sum_down[j])) {
@@ -351,7 +348,6 @@ i_t pseudo_costs_t<i_t, f_t>::variable_selection(const std::vector<i_t>& fractio
351348 for (i_t k = 0 ; k < num_fractional; k++) {
352349 const i_t j = fractional[k];
353350
354- pseudo_cost_mutex[j].lock ();
355351 if (pseudo_cost_num_down[j] != 0 ) {
356352 pseudo_cost_down[k] = pseudo_cost_sum_down[j] / pseudo_cost_num_down[j];
357353 } else {
@@ -363,7 +359,6 @@ i_t pseudo_costs_t<i_t, f_t>::variable_selection(const std::vector<i_t>& fractio
363359 } else {
364360 pseudo_cost_up[k] = pseudo_cost_up_avg;
365361 }
366- pseudo_cost_mutex[j].unlock ();
367362
368363 constexpr f_t eps = 1e-6 ;
369364 const f_t f_down = solution[j] - std::floor (solution[j]);
@@ -444,8 +439,6 @@ i_t pseudo_costs_t<i_t, f_t>::reliable_variable_selection(
444439 omp_mutex_t score_mutex;
445440
446441 for (auto j : fractional) {
447- std::lock_guard<omp_mutex_t > lock (pseudo_cost_mutex[j]);
448-
449442 if (pseudo_cost_num_down[j] < reliable_threshold ||
450443 pseudo_cost_num_up[j] < reliable_threshold) {
451444 unreliable_list.push_back (j);
@@ -599,7 +592,6 @@ f_t pseudo_costs_t<i_t, f_t>::obj_estimate(const std::vector<i_t>& fractional,
599592 f_t pseudo_cost_down = 0 ;
600593 f_t pseudo_cost_up = 0 ;
601594
602- pseudo_cost_mutex[j].lock ();
603595 if (pseudo_cost_num_down[j] != 0 ) {
604596 pseudo_cost_down = pseudo_cost_sum_down[j] / pseudo_cost_num_down[j];
605597 } else {
@@ -611,7 +603,6 @@ f_t pseudo_costs_t<i_t, f_t>::obj_estimate(const std::vector<i_t>& fractional,
611603 } else {
612604 pseudo_cost_up = pseudo_cost_up_avg;
613605 }
614- pseudo_cost_mutex[j].unlock ();
615606
616607 constexpr f_t eps = 1e-6 ;
617608 const f_t f_down = solution[j] - std::floor (solution[j]);
0 commit comments