Dear Chao,
thank you for your attention
our intention is to link to the threaded libs
this is the result of doing an ldd of our shared library (it is compiled to be a python module)
rrossi@rrossi-desktop:~/kratos/libs$ ldd KratosMKLSolversApplication.so
linux-vdso.so.1 => (0x00007fffe8fc8000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00007f7818652000)
libdl.so.2 => /lib/libdl.so.2 (0x00007f781844d000)
libguide.so => /opt/intel/Compiler/11.1/072/lib/intel64/libguide.so (0x00007f78182a5000)
libboost_python.so.1.43.0 => /home/rrossi/compiled_libraries/boost_1_43/lib/libboost_python.so.1.43.0 (0x00007f7818052000)
libpython2.6.so.1.0 => /usr/lib/libpython2.6.so.1.0 (0x00007f7817ba0000)
libmkl_p4n.so => /opt/intel/Compiler/11.1/072/mkl/lib/em64t/libmkl_p4n.so (0x00007f7816816000)
libmkl_lapack.so => /opt/intel/Compiler/11.1/072/mkl/lib/em64t/libmkl_lapack.so (0x00007f7815baf000)
libmkl_mc.so => /opt/intel/Compiler/11.1/072/mkl/lib/em64t/libmkl_mc.so (0x00007f781469e000)
libmkl_core.so => /opt/intel/Compiler/11.1/072/mkl/lib/em64t/libmkl_core.so (0x00007f78142eb000)
libmkl_intel_thread.so => /opt/intel/Compiler/11.1/072/mkl/lib/em64t/libmkl_intel_thread.so (0x00007f78130a7000)
libmkl_intel_ilp64.so => /opt/intel/Compiler/11.1/072/mkl/lib/em64t/libmkl_intel_ilp64.so (0x00007f7812cf6000)
librt.so.1 => /lib/librt.so.1 (0x00007f7812aee000)
libimf.so => /opt/intel/Compiler/11.1/072/lib/intel64/libimf.so (0x00007f781275a000)
libsvml.so => /opt/intel/Compiler/11.1/072/lib/intel64/libsvml.so (0x00007f7812543000)
libm.so.6 => /lib/libm.so.6 (0x00007f78122c0000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f7811fac000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007f7811d94000)
libintlc.so.5 => /opt/intel/Compiler/11.1/072/lib/intel64/libintlc.so.5 (0x00007f7811c56000)
libc.so.6 => /lib/libc.so.6 (0x00007f78118d3000)
/lib64/ld-linux-x86-64.so.2 (0x00007f7818bae000)
libutil.so.1 => /lib/libutil.so.1 (0x00007f78116cf000)
libssl.so.0.9.8 => /usr/lib/libssl.so.0.9.8 (0x00007f781147f000)
libcrypto.so.0.9.8 => /usr/lib/libcrypto.so.0.9.8 (0x00007f78110ef000)
libz.so.1 => /lib/libz.so.1 (0x00007f7810ed7000)
i tried including iomp5 instead of guide but nothing changes
the information of the system follows:
Linux rrossi-desktop 2.6.32-24-generic #38-Ubuntu SMP Mon Jul 5 09:20:59 UTC 2010 x86_64 GNU/Linux
the gcc version installed in the system (in case it has any importance) is:
gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3
the weird thing is that it fails with a segfault when i run it normally, while it runs fine (and without leakage) in valgrind. This makes me think to a threading problem
investigating a little on this issue, i realized that if i change the number of threads i can make it to work
export OMP_NUM_THREADS=1 ---> WORKS
export OMP_NUM_THREADS=2 ---> WORKS
export OMP_NUM_THREADS=4 ---> segfault
export OMP_NUM_THREADS=8 ---> segfault (note that i have only 4 cores...the other ones are the HT...)
system size is of the order of 100k dofs.
If needed i can print the matrix and vector in .mm format
ok...thank you again for your attention
Riccardo
P.S. i forgot to say that the error appears to be after the reordering, that is, looking at the code at the link
http://kratos.cimne.upc.es/trac/browser/kratos/applications/mkl_solvers_application/external_include...the error appears after line 252 and before line 266 (no error is issued ... simply segfault)