Skip to content

Conversation

@devmotion
Copy link
Contributor

Less drastic alternative to #1218 that does not remove the delta_min parameter of NewtonTrustRegion but instead changes its default value to 0.

Given that this is a dimensional quantity, I think this is a safer default value (related: #1102).

@github-actions
Copy link
Contributor

github-actions bot commented Dec 4, 2025

Benchmark Results (Julia vlts)

Time benchmarks
master 36794b7... master / 36794b7...
multivariate/solvers/first_order/AdaMax 0.542 ± 0.0087 ms 0.544 ± 0.0089 ms 0.997 ± 0.023
multivariate/solvers/first_order/Adam 0.542 ± 0.0089 ms 0.541 ± 0.0089 ms 1 ± 0.023
multivariate/solvers/first_order/BFGS 0.261 ± 0.0084 ms 0.262 ± 0.0079 ms 0.996 ± 0.044
multivariate/solvers/first_order/ConjugateGradient 0.181 ± 0.0032 ms 0.18 ± 0.003 ms 1 ± 0.024
multivariate/solvers/first_order/GradientDescent 1.54 ± 0.012 ms 1.54 ± 0.011 ms 1 ± 0.011
multivariate/solvers/first_order/LBFGS 0.233 ± 0.0072 ms 0.232 ± 0.0071 ms 1 ± 0.044
multivariate/solvers/first_order/MomentumGradientDescent 2.17 ± 0.015 ms 2.17 ± 0.014 ms 1 ± 0.0095
multivariate/solvers/first_order/NGMRES 0.436 ± 0.011 ms 0.427 ± 0.01 ms 1.02 ± 0.035
time_to_load 0.413 ± 0.0077 s 0.41 ± 0.0045 s 1.01 ± 0.022
Memory benchmarks
master 36794b7... master / 36794b7...
multivariate/solvers/first_order/AdaMax 0.34 k allocs: 7.19 kB 0.34 k allocs: 7.19 kB 1
multivariate/solvers/first_order/Adam 0.34 k allocs: 7.19 kB 0.34 k allocs: 7.19 kB 1
multivariate/solvers/first_order/BFGS 0.336 k allocs: 15 kB 0.336 k allocs: 15 kB 1
multivariate/solvers/first_order/ConjugateGradient 0.338 k allocs: 13.6 kB 0.338 k allocs: 13.6 kB 1
multivariate/solvers/first_order/GradientDescent 1.89 k allocs: 0.0713 MB 1.89 k allocs: 0.0713 MB 1
multivariate/solvers/first_order/LBFGS 0.317 k allocs: 14.2 kB 0.317 k allocs: 14.2 kB 1
multivariate/solvers/first_order/MomentumGradientDescent 2.24 k allocs: 0.077 MB 2.24 k allocs: 0.077 MB 1
multivariate/solvers/first_order/NGMRES 1.41 k allocs: 0.112 MB 1.41 k allocs: 0.112 MB 1
time_to_load 0.153 k allocs: 14.5 kB 0.153 k allocs: 14.5 kB 1

A plot of the benchmark results has been uploaded as an artifact at .

@codecov
Copy link

codecov bot commented Dec 4, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 86.84%. Comparing base (432fc63) to head (36794b7).
⚠️ Report is 3 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1219      +/-   ##
==========================================
+ Coverage   86.77%   86.84%   +0.07%     
==========================================
  Files          45       45              
  Lines        3539     3543       +4     
==========================================
+ Hits         3071     3077       +6     
+ Misses        468      466       -2     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@pkofod
Copy link
Member

pkofod commented Dec 7, 2025

For now, I think this is better than removing it completely as it was a requested feature to avoid very long runs in problems with known issues. You could argue that it's your own fault that the gradient is not correct or that the optimum might be at a non-differentiability, but nevertheless it was a useful feature to some. If the default is zero I think it should be fine.

@pkofod pkofod merged commit 3e3d33e into JuliaNLSolvers:master Dec 7, 2025
13 of 14 checks passed
@devmotion devmotion deleted the dmw/delta_min_zero branch December 7, 2025 11:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants