Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
6834 Discussions

Is there a max num of threads for mkl dss


Hello, everyone.

I used MKL DSS to solve linear systems with openMP. When calling dss with 32 threads, i came up with a run time error. Debugging messages are as below:


[New Thread 0x7fff86b5e700 (LWP 10279)]
[New Thread 0x7fff8675d700 (LWP 10280)]
[New Thread 0x7fff8635c700 (LWP 10281)]
[New Thread 0x7fff85f5b700 (LWP 10282)]
[New Thread 0x7fff85b5a700 (LWP 10283)]
[New Thread 0x7fff85759700 (LWP 10284)]
[New Thread 0x7fff85358700 (LWP 10285)]
[New Thread 0x7fff84f57700 (LWP 10286)]
[New Thread 0x7fff84b56700 (LWP 10287)]
[New Thread 0x7fff84755700 (LWP 10288)]
[New Thread 0x7fff7fafe700 (LWP 10289)]
[New Thread 0x7fff7f6fd700 (LWP 10290)]
[New Thread 0x7fff7f2fc700 (LWP 10291)]
[New Thread 0x7fff7eefb700 (LWP 10292)]
[New Thread 0x7fff7eafa700 (LWP 10293)]
[New Thread 0x7fff7e6f9700 (LWP 10294)]
[New Thread 0x7fff7e2f8700 (LWP 10295)]
[New Thread 0x7fff7def7700 (LWP 10296)]
[New Thread 0x7fff7daf6700 (LWP 10297)]
[New Thread 0x7fff7d6f5700 (LWP 10298)]
[New Thread 0x7fff7d2f4700 (LWP 10299)]
[New Thread 0x7fff7cef3700 (LWP 10300)]
[New Thread 0x7fff7caf2700 (LWP 10301)]
[New Thread 0x7fff7c6f1700 (LWP 10302)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fff7cef3700 (LWP 10300)]
0x00007ffff6da6ca2 in mkl_pds_lp64_c_blkl_omp_pardiso ()
   from /home/***/intel/composer_xe_2015.0.090/mkl/lib/intel64/
Missing separate debuginfos, use: debuginfo-install glibc-2.12-1.149.el6.x86_64 libgcc-4.4.7-11.el6.x86_64 libgomp-4.4.7-11.el6.x86_64

"Tag:3" is a label in my program after dss_reorder, thus it may be something wrong with call of dss_factor_*. However, when i run the same program with only the difference of less threads, say 16, everyting seems OK. No error emerges when calling pardiso with 32 threads also. What happened after all?



0 Kudos
1 Reply
Black Belt

You may need to boost stack limit, if you hadn't already done so; even "unlimited" stack may have a maximum number of threads for a given test case.

If you aren't using the entire thread stack allotment, you might try reducing it.

You may need to know whether you are running in 32- or 64-bit mode.

0 Kudos