- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Hello,

In my code I have to solve a system of N-2 linear equations K+1 times (with k<10). What this means is that my matrix A (N-2*N-2) will be structurally the same for all K, only with different values. Initially I factored matrix A (with DSS_FACTOR_COMPLEX) every time I needed to solve the system for a different K. But since K<10, I was hoping to allocate the handle ( type(MKL_DSS_HANDLE), allocatable :: handle(:) -- allocate(handle(0:K)) ) and use DSS_FACTOR only once for every K and then use DSS_SOLVE_COMPLEX(handle(k), MKL_DSS_DEFAULTS, RHS, 1, solutionout) to solve my system. It's also important to understand that the code then solves all K+1 systems thousands of times.

Unfortunately, the code exits with:

forrtl: severe (174): SIGSEGV, segmentation fault occurred

Image PC Routine Line Source

ruth6.exe 0000000110171F6E for__signal_handl Unknown Unknown

libsystem_platfor 00007FFF8AA7F52A _sigtramp Unknown Unknown

ruth6.exe 000000010F97FAD6 mkl_spblas_lp64_a Unknown Unknown

The most interesting here is that it actually solves all K+1 systems a few times (last time solved ~300 times) before exiting with this error.

Please help!!

Link Copied

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Josue, what MKL version to you use? 2. Could you give us reproducer?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Dear Gennady F.

Thank you for your reply. The MKL version that I'm using is 2017.4.181. And ifort (IFORT) 17.0.4 20170411

I've written a small reproducer of the problem which is not the actual code, is in fact a portion of a portion of the actual code. To compile this I used the following command line:

ifort DSStest.f90 -O3 -fp-model precise -fp-model source -heap-arrays -g -traceback -check all -fp-stack-check -check all -I${MKLROOT}/include/intel64/lp64 -I${MKLROOT}/include ${MKLROOT}/lib/libmkl_blas95_lp64.a ${MKLROOT}/lib/libmkl_lapack95_lp64.a ${MKLROOT}/lib/libmkl_intel_lp64.a ${MKLROOT}/lib/libmkl_sequential.a ${MKLROOT}/lib/libmkl_core.a -lpthread -lm -ldl -o DSStest.exe

Even if you don't get the above error at your first try, please compile and run it 7 or 8 times. This reproducer gave me the exact same error...

Compiled and run the code on a macbook pro 2.3 GHz Intel Core i7.

EDIT: I've also added the zipped .dSYM

Best,

Josué

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

I tried to reproduce the case with the latest MKL 2018 u1 on win10.

the compilation is much simpler : ifort /Qmkl DSStest.f90 ( MKL links with LP64 + threading libs). Running the executable 10 times - I don't see problems. I only added a couple of lines of the code to print version of mkl. Here is the one of outputs i obtained on my side:

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page