Segmentation fault solving large linear program

51 views
Skip to first unread message

Yogesh Dahiya

unread,
Jul 4, 2017, 7:16:53 AM7/4/17
to CVXOPT
Hi,
I am trying to solve a large linear program where A (in Ax<=b) is of order of 500000*100 and I am getting segmentation fault with default KKT sovler. Backtrace using gdb points it to dscal_k () in libopenblas.so . My cvxopt version is 1.1.9
 and I have installed it via conda. Any thoughts how I can get it working. Thanks in advacne.

Martin

unread,
Jul 4, 2017, 7:59:48 AM7/4/17
to CVXOPT
Did you install CVXOPT via the conda-forge channel? 

There was recently a post with a similar issue with OpenBLAS on a system with many cores. I believe that in that case the problem was due to a bug in OpenBLAS—setting the environment variable OPENBLAS_NUM_THREADS=1 supposedly worked. Perhaps you could try that? Alternatively, you may want to build CVXOPT with a different BLAS/LAPACK library.

Yogesh Dahiya

unread,
Jul 4, 2017, 12:07:37 PM7/4/17
to CVXOPT
Yes I installed using conda-forge channel and OPENBLAS_NUM_THREADS=1 works for me as well. Does this restrict performance in any way? Thanks

Martin

unread,
Jul 4, 2017, 2:38:55 PM7/4/17
to CVXOPT
Yes, it may have an impact on performance, especially if you solve large problems and have a CPU with many cores. It appears that the next release of OpenBLAS is just a few weeks away (see https://github.com/xianyi/OpenBLAS/issues/1223), and hopefully it will fix the bug that gives rise to this issue.

An alternative would be to build CVXOPT with MKL or ATLAS instead of OpenBLAS.
Reply all
Reply to author
Forward
0 new messages