Closed odow closed 6 months ago
Attention: 12 lines
in your changes are missing coverage. Please review.
Comparison is base (
d6bea20
) 3.25% compared to head (54085d2
) 8.73%.
Files | Patch % | Lines |
---|---|---|
lib/OptimizationMOI/src/nlp.jl | 0.00% | 12 Missing :warning: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Format-check seems unrelated. Also failing on master
: https://github.com/SciML/Optimization.jl/actions/runs/7493571366/job/20399569099
This makes little difference to the Optimization.AutoSparseReverseDiff()
case because the main cost is computing the Hessian sparsity
Yeah the sparsity detection is the main contributor across the board. Even with the MTK implementation that would be the major part. We need a more performant one 😅
Is there a future where the MOI reverse mode becomes a package? 😄
It's just part of MOI, sooo it's already a package?
The main blocker is that you'd need to convert the symbolic form into MOI's expression format. It also operates on a single model with all the constraints, not function-by-function.
cc @ccoffrin
Checklist
Additional context
The problem is that
evaluator.J
andevaluator.H
in the hot loops involve a call to: https://github.com/SciML/Optimization.jl/blob/d6bea20a466fb0fbb30592c8dc3f0003cad9081d/lib/OptimizationMOI/src/nlp.jl#L23-L26 this is expensive because it involvesfieldnames
.Benchmark
Profile
Before
After