[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