[Coin-ipopt] compiling on VS with PARDISO
Andreas Waechter
andreasw at watson.ibm.com
Thu Jan 10 18:53:43 EST 2008
Hi Lily,
> How can I specify which linear solver to use when I compile Ipopt using
> Visual Studio? I am trying to compile it with Pardiso.
1. You need to edit the file
Ipopt/src/Common/IpoptConfig.h
You need to comment out the lines that say
#define HAVE_MA27 1
and
#define HAVE_MC19 1
and then instead specify
#define HAVE_PARDISO 1
2. You need to edit the Ipopt project in Visual Studio and take out the
files
IpMa27TSolverInterface.cpp
IpMc19TSymScalingMethod.cpp
and instead use
IpPardisoSolverInterface.cpp
3. HOWEVER: In case you want to use Pardiso from the Intel MKL, you need
to be aware that the version of Pardiso in there does not yet have certain
features that are used to make it properly work in Ipopt. In particular,
Pardiso does not provide the inertia information - this means that your
might see bad convergence or failure for nonconvex problems - and there
might be other problems. I don't know if there is a Windows version of
Pardiso available that already has the required features. You might want
to contact the Pardiso developer, Olaf Schenk - you can find the contact
information at the (new) Pardiso home page
http://www.pardiso-project.org/
I hope this helps,
Andreas
More information about the Coin-ipopt
mailing list