JuliaSmoothOptimizers / NLPModelsJuMP.jl

Create NLPModels with JuMP
Other
36 stars 8 forks source link

Track allocations in a MathOptNLP(NLS)Model #140

Open tmigot opened 2 years ago

tmigot commented 2 years ago

I ran the following script tracking allocations:

using Pkg
Pkg.activate(".")
using JuMP, LinearAlgebra, NLPModels, NLPModelsJuMP, NLPModelsTest # main version of NLPModelsTest

nlp_problems = setdiff(NLPModelsTest.nlp_problems, ["MGH01Feas"])
nls_problems = NLPModelsTest.nls_problems
extra_nls_problems = ["HS30", "HS43", "MGH07"]

for problem in lowercase.(nlp_problems)
  include(joinpath("nlp_problems", "$problem.jl"))
end

for problem in lowercase.(nls_problems ∪ extra_nls_problems)
  include(joinpath("nls_problems", "$problem.jl"))
end

for prob in Symbol.(lowercase.(nlp_problems))
  prob_fn = eval(prob)
  nlp = MathOptNLPModel(prob_fn(), hessian = (prob != :nohesspb), name = string(prob))
  print_nlp_allocations(nlp, test_allocs_nlpmodels(nlp))
end

for prob in Symbol.(lowercase.(nls_problems ∪ extra_nls_problems))
  prob_fn = eval(prob)
  nls = prob_fn()
  print_nlp_allocations(nls, test_allocs_nlpmodels(nls))
  print_nlp_allocations(nls, test_allocs_nlsmodels(nls))
end

and got this report:

  Problem name: brownden
                        obj: ████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 16.0  
                hess_coord!: ████████████████████ 96.0  
                      grad!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0   
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0   
                     hprod!: █████████████████⋅⋅⋅ 80.0  
              hess_op_prod!: █████████████████⋅⋅⋅ 80.0  

  Problem name: hs5
                        obj: ████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 16.0
                hess_coord!: ████████████████████ 96.0
                      grad!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: █████████████████⋅⋅⋅ 80.0
              hess_op_prod!: █████████████████⋅⋅⋅ 80.0

  Problem name: hs6
                 hprod_lag!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                    jtprod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                     jprod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                        obj: ███⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 16.0
     jac_op_transpose_prod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      cons!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                hess_coord!: ███████████████⋅⋅⋅⋅⋅ 80.0
               jac_op_prod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      grad!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hess_lag_coord!: ████████████████████ 112.0
          hess_lag_op_prod!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                 jac_coord!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: ███████████████⋅⋅⋅⋅⋅ 80.0
             jac_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
              hess_op_prod!: ███████████████⋅⋅⋅⋅⋅ 80.0

  Problem name: hs10
                 hprod_lag!: ████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                    jtprod!: ██████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                     jprod!: ██████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                        obj: ████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 32.0
     jac_op_transpose_prod!: ██████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      cons!: ██████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                hess_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
               jac_op_prod!: ██████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      grad!: ████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
            hess_lag_coord!: ████████████████████ 176.0
          hess_lag_op_prod!: ████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                 jac_coord!: ██████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
             jac_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
              hess_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: hs11
                 hprod_lag!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                    jtprod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                     jprod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                        obj: ██████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 32.0
     jac_op_transpose_prod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      cons!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                hess_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
               jac_op_prod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      grad!: ██████████████████⋅⋅ 96.0
            hess_lag_coord!: ████████████████████ 112.0
          hess_lag_op_prod!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                 jac_coord!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
             jac_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
              hess_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: hs13
                 hprod_lag!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                    jtprod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                     jprod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                        obj: ███⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 16.0
     jac_op_transpose_prod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      cons!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                hess_coord!: ███████████████⋅⋅⋅⋅⋅ 80.0
               jac_op_prod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      grad!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hess_lag_coord!: ████████████████████ 112.0
          hess_lag_op_prod!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                 jac_coord!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: ███████████████⋅⋅⋅⋅⋅ 80.0
             jac_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
              hess_op_prod!: ███████████████⋅⋅⋅⋅⋅ 80.0

  Problem name: hs14
                 hprod_lag!: ██████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                    jtprod!: ████████████████████ 128.0
                     jprod!: ████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                        obj: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 32.0
     jac_op_transpose_prod!: ████████████████████ 128.0
                      cons!: ████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                hess_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
               jac_op_prod!: ████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      grad!: ███████████████⋅⋅⋅⋅⋅ 96.0
            hess_lag_coord!: ██████████████████⋅⋅ 112.0
          hess_lag_op_prod!: ██████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                 jac_coord!: ████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
             jac_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
              hess_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: lincon
                 hprod_lag!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                    jtprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     jprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                        obj: ███⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 16.0
     jac_op_transpose_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                      cons!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                hess_coord!: ███████████████⋅⋅⋅⋅⋅ 80.0
               jac_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                      grad!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hess_lag_coord!: ████████████████████ 112.0
          hess_lag_op_prod!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                 jac_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: ███████████████⋅⋅⋅⋅⋅ 80.0
             jac_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
              hess_op_prod!: ███████████████⋅⋅⋅⋅⋅ 80.0

  Problem name: linsv
                 hprod_lag!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                    jtprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     jprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                        obj: ██████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 32.0
     jac_op_transpose_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                      cons!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                hess_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
               jac_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                      grad!: ████████████████████ 64.0
            hess_lag_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
          hess_lag_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                 jac_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
             jac_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
              hess_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: lls
                 hprod_lag!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                    jtprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     jprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                        obj: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
     jac_op_transpose_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                      cons!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                hess_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
               jac_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                      grad!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hess_lag_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
          hess_lag_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                 jac_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
             jac_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
              hess_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: lls
     hess_op_residual_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
       hess_coord_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
    jac_structure_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            jprod_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
        jac_coord_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
      jac_op_residual_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hprod_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
jac_op_residual_transpose_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
           jtprod_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                  residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
   hess_structure_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: mgh01
                        obj: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                hess_coord!: ████████████████████ 192.0
                      grad!: ██████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 96.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 80.0
              hess_op_prod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 80.0

  Problem name: mgh01
     hess_op_residual_prod!: ███████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
       hess_coord_residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
    jac_structure_residual!: ████████████████████ 208.0
            jprod_residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
        jac_coord_residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
      jac_op_residual_prod!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
            hprod_residual!: ███████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
jac_op_residual_transpose_prod!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
           jtprod_residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                  residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
   hess_structure_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: nlshs20
                 hprod_lag!: ███████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                    jtprod!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                     jprod!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                        obj: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
     jac_op_transpose_prod!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      cons!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                hess_coord!: ████████████████████ 208.0
               jac_op_prod!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      grad!: ██████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 96.0
            hess_lag_coord!: █████████████████⋅⋅⋅ 176.0
          hess_lag_op_prod!: ███████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                 jac_coord!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: ██████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 96.0
             jac_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
              hess_op_prod!: ██████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 96.0

  Problem name: nlshs20
     hess_op_residual_prod!: ███████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
       hess_coord_residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
    jac_structure_residual!: ████████████████████ 208.0
            jprod_residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
        jac_coord_residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
      jac_op_residual_prod!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
            hprod_residual!: ███████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
jac_op_residual_transpose_prod!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
           jtprod_residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                  residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
   hess_structure_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: nlslc
                 hprod_lag!: ██████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                    jtprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     jprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                        obj: ████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
     jac_op_transpose_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                      cons!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                hess_coord!: ████████████████████ 128.0
               jac_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                      grad!: ███████████████⋅⋅⋅⋅⋅ 96.0
            hess_lag_coord!: ██████████████████⋅⋅ 112.0
          hess_lag_op_prod!: ██████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                 jac_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: █████████████⋅⋅⋅⋅⋅⋅⋅ 80.0
             jac_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
              hess_op_prod!: █████████████⋅⋅⋅⋅⋅⋅⋅ 80.0

  Problem name: nlslc
     hess_op_residual_prod!: ████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 176.0
       hess_coord_residual!: ██⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
    jac_structure_residual!: ████████████████████ 880.0
            jprod_residual!: ██⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
        jac_coord_residual!: ██⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
      jac_op_residual_prod!: ██⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
            hprod_residual!: ████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 176.0
jac_op_residual_transpose_prod!: ██⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
           jtprod_residual!: ██⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                  residual!: ██⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
   hess_structure_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: hs30
                 hprod_lag!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                    jtprod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                     jprod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                        obj: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
     jac_op_transpose_prod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      cons!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                hess_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
               jac_op_prod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      grad!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hess_lag_coord!: ████████████████████ 112.0
          hess_lag_op_prod!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                 jac_coord!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
             jac_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
              hess_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: hs30
     hess_op_residual_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
       hess_coord_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
    jac_structure_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            jprod_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
        jac_coord_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
      jac_op_residual_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hprod_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
jac_op_residual_transpose_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
           jtprod_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                  residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
   hess_structure_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: hs43
                 hprod_lag!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                    jtprod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                     jprod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                        obj: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
     jac_op_transpose_prod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      cons!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                hess_coord!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
               jac_op_prod!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                      grad!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hess_lag_coord!: ████████████████████ 112.0
          hess_lag_op_prod!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 64.0
                 jac_coord!: █████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
             jac_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
              hess_op_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: hs43
     hess_op_residual_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
       hess_coord_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
    jac_structure_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            jprod_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
        jac_coord_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
      jac_op_residual_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
            hprod_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
jac_op_residual_transpose_prod!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
           jtprod_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                  residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
   hess_structure_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0

  Problem name: mgh07
                        obj: ████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                hess_coord!: ████████████████████ 256.0
                      grad!: ████████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 96.0
            hess_structure!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
                     hprod!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 144.0
              hess_op_prod!: ████████████⋅⋅⋅⋅⋅⋅⋅⋅ 144.0

  Problem name: mgh07
     hess_op_residual_prod!: ██████████████⋅⋅⋅⋅⋅⋅ 144.0
       hess_coord_residual!: ██████████████⋅⋅⋅⋅⋅⋅ 144.0
    jac_structure_residual!: ████████████████████ 208.0
            jprod_residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
        jac_coord_residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
      jac_op_residual_prod!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
            hprod_residual!: ██████████████⋅⋅⋅⋅⋅⋅ 144.0
jac_op_residual_transpose_prod!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
           jtprod_residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
                  residual!: █████⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 48.0
   hess_structure_residual!: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0.0
tmigot commented 1 year ago

This might be useful as well to improve the obj and grad of NLS models We probably need to modify obj and grad for nls following this https://github.com/JuliaSmoothOptimizers/NLPModels.jl/commit/a5d084cc1a299e02dd446f764c306ff0183bc6b0