Conversation
ffd9eaf to
800dae2
Compare
|
This is consistent with ParametricOptInterface which does some magic if it takes an optimizer constructor as argument but when it takes an instantiated optimizer, it does not modify it. |
|
Interesting, |
Yes, I think we should discuss this, and it should also go in parallel with the layer design that @odow suggested in |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #209 +/- ##
=======================================
Coverage 95.08% 95.08%
=======================================
Files 16 16
Lines 834 834
=======================================
Hits 793 793
Misses 41 41 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
I'm very excited about this new feature and want to try it out to solve the problem discribed in https://discourse.julialang.org/t/memory-blow-up-when-solving-a-sparse-affine-hermitian-sdp-translated-from-yalmip-to-jump/137744/7 Can I adapt this branch locally to try out, or do I need to make any modification to the MOI? |
|
For now, you can just do: function dual_optimizer()
inner = MosekTools.Optimizer()
dual_problem = Dualization.DualProblem{Float64}(inner)
return Dualization.DualOptimizer{Float64,typeof(inner)}(dual_problem)
end
model = Model(dual_optimizer)which I linked in https://discourse.julialang.org/t/bottleneck-of-jump/136609/21?u=odow |
It's a bit counter intuitive to still add caches and bridges when the user explicitly give an instantiated model. I guess the use case is the
DualizableModelbut maybe we don't need this. We're using aUniversalFallbackon top of it anyway so what's the use for it instead of justMOI.Utilities.Model?