diff -r e2953ffd4e0b -r e9a460a0e638 src/prox_penalty/radon_squared.rs --- a/src/prox_penalty/radon_squared.rs Fri May 15 14:40:02 2026 -0500 +++ b/src/prox_penalty/radon_squared.rs Sun Jul 19 07:34:39 2026 +0200 @@ -56,7 +56,11 @@ where I: AlgIterator, { - let violation = reg.find_tolerance_violation(τv, τ, ε, true, config); + // If no merging heuristic is used, let's be more conservative about spike insertion, + // and skip it after first round. If merging is done, being more greedy about spike + // insertion also seems to improve performance. + let skip_by_rough_check = !config.merging.enabled; + let violation = reg.find_tolerance_violation(τv, τ, ε, skip_by_rough_check, config); reg.solve_oc_radonsq(μ, τv, τ, ε, violation, config, stats); Ok((None, true))