<div dir="ltr">Further investigation reveals that this problem arises with the Intel compiler suite but not with the GCC suite. More concretely:<div><br></div><div style># Configuring/building with the Intel compiler suite leads to a segfault with MA86 and MA97 for <span style="font-family:arial,sans-serif;font-size:13px">hs071_main</span></div>
<div>../configure CXX=icpc CC=icc F77=ifort ADD_CFLAGS="-openmp" ADD_FFLAGS="-openmp" ADD_CXXFLAGS="-openmp"<br></div><div><br></div><div style># Configuring/building with the GCC suite works with MA86 and MA97 for <span style="font-family:arial,sans-serif;font-size:13px">hs071_main</span></div>
<div style>../configure CXX=g++ CC=gcc F77=gfortran ADD_CFLAGS="-fopenmp" ADD_FFLAGS="-fopenmp" ADD_CXXFLAGS="-fopenmp"<br></div><div style><br></div><div style>For reference, I have run these tests with GCC 4.6.3 and ICC 13.1.1 20130313. </div>
<div style><br></div><div><div style="font-family:arial,sans-serif;font-size:13px">Best regards,</div><div style="font-family:arial,sans-serif;font-size:13px">Breannan Smith</div><div style="font-family:arial,sans-serif;font-size:13px">
<a href="mailto:smith@cs.columbia.edu" target="_blank">smith@cs.columbia.edu</a></div></div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, May 22, 2013 at 12:59 PM, Breannan Smith <span dir="ltr"><<a href="mailto:smith@cs.columbia.edu" target="_blank">smith@cs.columbia.edu</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Dear Ipopt Community,<div><br></div><div>I'm attempting to run Ipopt-3.11.0 with the parallel HSL solvers (<a href="http://www.hsl.rl.ac.uk/ipopt/" target="_blank">http://www.hsl.rl.ac.uk/ipopt/</a>) on 64-bit Linux with Intel's compilers (version 13.1.1 20130313), but I encounter a segfault if I execute Ipopt with MA86 or MA97 with OpenMP enabled. I am configuring Ipopt with:</div>
<div><br></div><div>../configure CXX=icpc CC=icc F77=ifort ADD_CFLAGS=-openmp ADD_FFLAGS=-openmp ADD_CXXFLAGS=-openmp --with-blas="-L$MKLROOT/lib -lmkl_intel_lp64 -lmkl_sequential -lmkl_core"</div><div>
<br></div><div>I am building the HSL libraries with Ipopt as described in the documentation (that is copying coinhsl into ThirdParty/HSL). </div><div><br></div><div>If I then modify the C++ test example hs071_main.cpp to use ma97 (e.g. app->Options()->SetStringValue( <span>"linear_solver"</span>, <span>"ma97"</span> )), build, and execute, the code segfaults in hsl_mc78_integer_mp_mc78_col_counts_integer_ (backtrace included below). This same example runs fine with ma27, ma57, and mumps. </div>
<div><br></div><div>Any thoughts, tips, tricks, or suggestions as to the cause of this segfault? </div><div><br></div><div>Thanks, I'm happy to run more tests or provide more details!</div><div>
<br></div><div>Best regards,</div><div>Breannan Smith</div><div><a href="mailto:smith@cs.columbia.edu" target="_blank">smith@cs.columbia.edu</a></div><div><br></div><div>The backtrace:</div><div><br></div>
<div><div><div>Program received signal SIGSEGV, Segmentation fault.</div><div>0x00007ffff71b9701 in hsl_mc78_integer_mp_mc78_col_counts_integer_ ()</div><div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/ThirdParty/HSL/.libs/libcoinhsl.so.1</div>
<div>(gdb) bt</div><div>#0 0x00007ffff71b9701 in hsl_mc78_integer_mp_mc78_col_counts_integer_ ()</div><div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/ThirdParty/HSL/.libs/libcoinhsl.so.1</div>
<div>#1 0x00007ffff729b031 in hsl_ma97_double_mp_get_nzl_ ()</div><div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/ThirdParty/HSL/.libs/libcoinhsl.so.1</div><div>#2 0x00007ffff7298d9e in hsl_ma97_double_mp_compute_order_ ()</div>
<div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/ThirdParty/HSL/.libs/libcoinhsl.so.1</div><div>#3 0x00007ffff72962ea in hsl_ma97_double_mp_analyse_double_ ()</div><div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/ThirdParty/HSL/.libs/libcoinhsl.so.1</div>
<div>#4 0x00007ffff72cd1c1 in ma97_analyse_d ()</div><div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/ThirdParty/HSL/.libs/libcoinhsl.so.1</div><div>#5 0x00007ffff7adf37e in Ipopt::Ma97SolverInterface::InitializeStructure(int, int, int const*, int const*) ()</div>
<div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div><div>#6 0x00007ffff7ad2e19 in Ipopt::TSymLinearSolver::InitializeStructure(Ipopt::SymMatrix const&) ()</div>
<div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div><div>#7 0x00007ffff7ad1a35 in Ipopt::TSymLinearSolver::MultiSolve(Ipopt::SymMatrix const&, std::vector<Ipopt::SmartPtr<Ipopt::Vector const>, std::allocator<Ipopt::SmartPtr<Ipopt::Vector const> > >&, std::vector<Ipopt::SmartPtr<Ipopt::Vector>, std::allocator<Ipopt::SmartPtr<Ipopt::Vector> > >&, bool, int) () from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div>
<div>#8 0x00007ffff7ac2d1f in Ipopt::StdAugSystemSolver::MultiSolve(Ipopt::SymMatrix const*, double, Ipopt::Vector const*, double, Ipopt::Vector const*, double, Ipopt::Matrix const*, Ipopt::Vector const*, double, Ipopt::Matrix const*, Ipopt::Vector const*, double, std::vector<Ipopt::SmartPtr<Ipopt::Vector const>, std::allocator<Ipopt::SmartPtr<Ipopt::Vector const> > >&, std::vector<Ipopt::SmartPtr<Ipopt::Vector const>, std::allocator<Ipopt::SmartPtr<Ipopt::Vector const> > >&, std::vector<Ipopt::SmartPtr<Ipopt::Vector const>, std::allocator<Ipopt::SmartPtr<Ipopt::Vector const> > >&, std::vector<Ipopt::SmartPtr<Ipopt::Vector const>, std::allocator<Ipopt::SmartPtr<Ipopt::Vector const> > >&, std::vector<Ipopt::SmartPtr<Ipopt::Vector>, std::allocator<Ipopt::SmartPtr<Ipopt::Vector> > >&, std::vector<Ipopt::SmartPtr<Ipopt::Vector>, std::allocator<Ipopt::SmartPtr<Ipopt::Vector> > >&, std::vector<Ipopt::SmartPtr<Ipopt::Vector>, std::allocator<Ipopt::SmartPtr<Ipopt::Vector> > >&, std::vector<Ipopt::SmartPtr<Ipopt::Vector>, std::allocator<Ipopt::SmartPtr<Ipopt::Vector> > >&, bool, int) ()</div>
<div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div><div>#9 0x00007ffff79e81c2 in Ipopt::AugSystemSolver::Solve(Ipopt::SymMatrix const*, double, Ipopt::Vector const*, double, Ipopt::Vector const*, double, Ipopt::Matrix const*, Ipopt::Vector const*, double, Ipopt::Matrix const*, Ipopt::Vector const*, double, Ipopt::Vector const&, Ipopt::Vector const&, Ipopt::Vector const&, Ipopt::Vector const&, Ipopt::Vector&, Ipopt::Vector&, Ipopt::Vector&, Ipopt::Vector&, bool, int) ()</div>
<div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div><div>#10 0x00007ffff7a558d6 in Ipopt::LeastSquareMultipliers::CalculateMultipliers(Ipopt::Vector&, Ipopt::Vector&) ()</div>
<div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div><div>#11 0x00007ffff79fea70 in Ipopt::DefaultIterateInitializer::least_square_mults(Ipopt::Journalist const&, Ipopt::IpoptNLP&, Ipopt::IpoptData&, Ipopt::IpoptCalculatedQuantities&, Ipopt::SmartPtr<Ipopt::EqMultiplierCalculator> const&, double) ()</div>
<div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div><div>#12 0x00007ffff7a02862 in Ipopt::DefaultIterateInitializer::SetInitialIterates() ()</div>
<div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div><div>#13 0x00007ffff7a195c2 in Ipopt::IpoptAlgorithm::InitializeIterates() ()</div><div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div>
<div>#14 0x00007ffff7a127e1 in Ipopt::IpoptAlgorithm::Optimize(bool) ()</div><div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div><div>#15 0x00007ffff798a542 in Ipopt::IpoptApplication::call_optimize() ()</div>
<div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div><div>#16 0x00007ffff7989ca0 in Ipopt::IpoptApplication::OptimizeNLP(Ipopt::SmartPtr<Ipopt::NLP> const&, Ipopt::SmartPtr<Ipopt::AlgorithmBuilder>&) ()</div>
<div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div><div>#17 0x00007ffff7989978 in Ipopt::IpoptApplication::OptimizeNLP(Ipopt::SmartPtr<Ipopt::NLP> const&) ()</div>
<div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div><div>#18 0x00007ffff79898fa in Ipopt::IpoptApplication::OptimizeTNLP(Ipopt::SmartPtr<Ipopt::TNLP> const&) ()</div>
<div> from /proj/cg/users/smith/research_current/gr/code/libs/Ipopt-3.11.0/build/Ipopt/src/Interfaces/.libs/libipopt.so.1</div><div>#19 0x0000000000402047 in main ()</div></div><div><br></div></div></div>
</blockquote></div><br></div>