-
Notifications
You must be signed in to change notification settings - Fork 562
Closed
Description
I observe a huge memory consumption of Pyomo while generating a somewhat-bigger model file for IPOPT. Moreover, generating the model takes longer than running IPOPT to solve it.
However, the initial creation of the model objects using Pyomo expressions is fast and does not consume much memory.
How can I debug this? I suppose it might be the generation of derivatives, but I don't know how to verify this.
Regarding derivatives: Does Pyomo create simple-minded symbolic derivatives, or does it use some techniques of algorithmic differentiation (a.k.a. automatic differentiation, i.e. at least reusing common subexpressions and/or using AD reverse mode for gradient calculations).