Forum Discussion

FICO's avatar
FICO
Community Manager
3 years ago

__lll_lock_wait allowing only one thread to work

I am calling the XPRESS optimizer from a multithreaded Pascal application and having performance issues with the solver.

While the program is multithreaded, all but one of the threads are sleeping all the time. A quick examination using gdb shows that those threads that are waiting are doing so after the call to XPRSdestroyprob:

(gdb) where

#0 0x00007ffff7bc175d in __lll_lock_wait () from /lib64/libpthread.so.0

#1 0x00007ffff7bbab44 in pthread_mutex_lock () from /lib64/libpthread.so.0

#2 0x00007ffff62981c1 in ?? () from /opt/xpressmp/lib/libxprs.so.41

#3 0x00007ffff4eb403e in XPRSdestroyprob_internal () from /opt/xpressmp/lib/libxprs.so.41

#4 0x00007ffff49881e9 in XPRSdestroyprob () from /opt/xpressmp/lib/libxprs.so.41

Am I calling the XPRESS solver library function in a wrong way?

Thank you very much.

21 Replies

  • FICO's avatar
    FICO
    Community Manager

    Wow, thank you so much for taking the time to analyze each error in detail. I hope it can find a way to get a fix in a future version.

    Thank you very much, Daniel!