A collection of HSL packages for use with IPOPT
Latest version: 2023.11.17
HSL provides a number of linear solvers that can be used in IPOPT. We provide several different ways for IPOPT users to download our codes.
For general use we recommend HSL_MA97. For small or highly sparse problems use MA57. For huge problems use HSL_MA86 (if factors fit in memory) or HSL_MA77 (if they don't).
|Free to all
|Free to academics
|Outdated, relatively slow.
Can be downloaded as a standalone package.
|Small / Medium
|Designed for multicore
|Small / Medium / Large
|Slower than HSL_MA86 on large problems
* Note: HSL_MA86 achieves repeatable answers in serial, however when running in parallel operations may be reordered for better performance. This leads to different (but equally valid) solutions.
- Try different scaling options using solver specific settings in ipopt.opt.
- For many problems scaling is not necessary. In particular try "ma57_automatic_scaling no" when using MA57 on small problems.
- See our report On the effects of scaling on the performance of Ipopt for a review of these effects.
- When using HSL_MA86 or HSL_MA97 ensure MeTiS ordering is compiled into Ipopt to maximize parallelism.
swap_vertical_circlecloud_downloadSupporting documents (2)Additional files may be available once you've completed the transaction for this product. If you've already done so, please log into your account and visit My account / Downloads section to view them.