-
Notifications
You must be signed in to change notification settings - Fork 58
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Linking Ipopt with linear solvers #247
Comments
I try it on Windows
I suspect that dynamic loading of linear solver is unavailable for |
I use Mac 11.0.1. I have a customized Ipopt installed in I followed the custom installation section by setting the lib path to
or even a weird segmentation fault several times (I still don't know why). So I followed https://github.com/jump-dev/Ipopt.jl#mac-2, configure and re-install HSL separately (I followed the instruction here and the |
In Pardiso Project -> Linux, I am working with lapack and blas in MKL libraries in cloud computing, and I'm not the superuser. Is it possible to make it work through MKL libraries, without public BLAS/LAPACK packages? Btw, I want to stick to Pardiso project, not MKL Pardiso. |
@Fisheryu1234 as a rule of thumb, you just need The specifics of how to compile pardiso and the needed dependencies can vary greatly depending on the environment, so I don't have any suggestions. If you get something working and have a suggestion to improve the documentation, let me know. |
@odow You are totally right! Later I figured out something similar in my case
|
For HSL MA solver, how should I install and switch between solvers like ma27 and ma86 in JuMP? I am using Mac, and copied all files in |
More recent versions of Ipopt provide the You should be able to set it as the absolute path: set_optimizer_attribute(model, "hsllib", "/usr/local/lib/libhsl_ma27.dylib")
set_optimizer_attribute(model, "linear_solver", "ma27")
set_optimizer_attribute(model, "hsllib", "/usr/local/lib/libhsl_ma86.dylib")
set_optimizer_attribute(model, "linear_solver", "ma86") |
Thanks, It works! It turns out that ma86 is terribly slower than ma27, which the opposite should be true. Does importing openblas32.jll matter? ma27 does not need while ma86 does in my case. |
Not necessarily. The performance of the linear solvers can vary a lot between problems. See, e.g., https://arxiv.org/pdf/1909.08104.pdf. |
There are a lot of issues relating to linear solvers with Ipopt. #236 was a start at providing some documentation on how to use Ipopt with different solvers: https://github.com/jump-dev/Ipopt.jl#custom-installation. However, most are untested and I don't have a Windows machine. I've opened this issue to track which solver-platform combinations we have instructions for.
If you have clarifications for existing instructions, or if you have instructions for a missing solver-platform pair, please open a pull request.
Here are solver/platform combinations I have tested and got working so far:
The text was updated successfully, but these errors were encountered: