[Ipopt] Continual Crashes with Mac OS-X MATLAB Mex Files

Tony Kelman kelman at berkeley.edu
Mon Jan 19 13:41:34 EST 2015


No one who has reported these issues has yet provided a reproducible test case, so I don’t know. My guess is users on Linux would have reported problems if they were having any. There are plenty of build-related problems having to do with integer sizes in BLAS on Linux, but I know how to solve those. From what I’ve seen, the Linux mex file either doesn’t work at all when the linear solver tries to use BLAS because of an integer size mismatch, or it works fairly reliably without crashing.

I also don’t have access to Matlab on any Linux machines at the moment, so even if someone were to send me a test problem I wouldn’t be able to run it under Linux Matlab right now.

-Tony


From: Anil V. Rao 
Sent: Monday, January 19, 2015 10:27 AM
To: Tony Kelman 
Cc: mailto:ipopt at list.coin-or.org 
Subject: Re: [Ipopt] Continual Crashes with Mac OS-X MATLAB Mex Files

Tony

Does this same problem exist in linux?

Anil

Anil V. Rao, PhD 
Associate Professor
Department of Mechanical and Aerospace Engineering
University of Florida 
Gainesville, FL 32611-6250
Tel: 352-672-1529 (cell)
Email:  anilvrao at gmail.com

On Jan 19, 2015, at 12:30 PM, Tony Kelman <kelman at berkeley.edu> wrote:


  Not owning an actual Mac myself, all I can say here is keep trying different combinations of Blas and Lapack implementations (BUILD vs -framework Accelerate vs -lblas), and GCC vs Clang compilers for the C and C++ components, different settings for -stdlib=libstdc++ vs -stdlib=libc++ (in ADD_CXXFLAGS, probably), and shared vs static linking (--enable-matlab-static).

  Based on tickets #250 and #252, the problem might be due to the exceptions that Ipopt throws internally for flow control in different unusual algorithmic conditions. Your code is apparently especially susceptible to those numerical issues that cause problems. It’s possible something could be done in Matlab mex interface code to mitigate this or make things more robust. But as I’ve said before, I don’t personally use Matlab any more, or own a Mac. I only use Ipopt via its C API these days with the Julia bindings, though we don’t have access to Matlab’s MA57 there which is an issue. Acceptable loss for now, in exchange for freedom from Matlab.

  If Mumps 5.0 can provide multithreading and be faster than MA57, or if someone wants to have a look at Elemental’s new sparse LDL which can return inertia and should be usable by Ipopt, I think those are good long-term projects worth looking into, since they can benefit everyone whether or not you use Matlab.

  -Tony


  From: Anil Rao 
  Sent: Monday, January 19, 2015 7:52 AM
  To: ipopt at list.coin-or.org 
  Subject: [Ipopt] Continual Crashes with Mac OS-X MATLAB Mex Files

  All,


  I am writing again about continual crashes in Mac OS-X with MATLAB.   It does not matter whether we compile our own Mac OS-X mex file or use the precompiled mex files.  In either case the IPOPT mex file causes fatal crashes in MATLAB.  I note that the fatal crash occurs using either the built-in version of MA57 or Mumps.  Much to my surprise the crashes with Mac versions of MATLAB do not seem to exist in Windows.


  I do not know what to do to fix the problem.  My goal is to compile a "crash-free" mex file using the MATLAB MA57 library.  In other words, I do not want to create a mex file that requires the MA57 source code because I want to be able to distribute the mex file.  


  I am grateful if somebody can help.  


  Regards,

  Anil Rao



  -- 

  Anil V. Rao, PhD
  Associate Professor
  Department of Mechanical and Aerospace Engineering
  University of Florida
  Gainesville, FL 32611-6250
  Tel:  (352) 672-1529
  E-mail:  anilvrao at gmail.com


------------------------------------------------------------------------------
  _______________________________________________
  Ipopt mailing list
  Ipopt at list.coin-or.org
  http://list.coin-or.org/mailman/listinfo/ipopt
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20150119/92f607af/attachment-0001.html>


More information about the Ipopt mailing list