I have a Java code that uses JBLAS for matrix computations and in Java side everything runs fine. However for debugging purposes, visualization etc., I pack the java code to jar-file and run It from Matlab. Everything works fine until the program reaches code that uses JBLAS. First I get errors like "Intel MKL ERROR: Parameter 3 was incorrect on entry to DGEMM", but this does not yet crush Matlab. However when the code reaches a function call to JBLAS routine Solve.pinv() the Matlab crushes. In terminal I got message like
"# A fatal error has been detected by the Java Runtime Environment: # Internal Error (safepoint.cpp:687), pid=7302, tid=140358050563840 # fatal error: Deadlock in safepoint code. Should have called back to the VM before blocking. #"
In hs_error_xxx.log file I see traces from JBLAS pinv method to NativeBlas.dgelsd method. I think the problem may be related to dynamic linking of lapack-libraries, but not sure??
Best Answer