Segment fault when getting element property with MKL built Julia
Forgive me if this is a kind of problem among multiple sources but I would post here first.
I would like to get the element property as below in Julia 1.1.1 with Gmsh SDK v4.4:
include("/home/pshi/codes/GmshTools.jl/deps/usr/lib/gmsh.jl") # where I download the SDK
gmsh.initialize()
gmsh.model.mesh.getElementProperties(5) # this line crash
gmsh.finalize()
Excuting it will show segment fault. Then I use Julia-debug which shows:
(gdb) r
Starting program: /home/pshi/bin/julia ./mytest.jl
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
warning: File "/opt/gcc8/lib64/libstdc++.so.6.0.25-gdb.py" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load:/usr/bin/mono-gdb.py".
To enable execution of this file add
add-auto-load-safe-path /opt/gcc8/lib64/libstdc++.so.6.0.25-gdb.py
line to your configuration file "/home/pshi/.gdbinit".
To completely disable this security protection add
set auto-load safe-path /
line to your configuration file "/home/pshi/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual. E.g., run from the shell:
info "(gdb)Auto-loading safe path"
[New Thread 0x7fffed026700 (LWP 201337)]
[New Thread 0x7fffdf677700 (LWP 201340)]
[New Thread 0x7fffdee76700 (LWP 201341)]
[New Thread 0x7fffde675700 (LWP 201342)]
[New Thread 0x7fffdde74700 (LWP 201343)]
[New Thread 0x7fffcfbff700 (LWP 201344)]
[New Thread 0x7fffce7fd700 (LWP 201345)]
[New Thread 0x7fffcd3fb700 (LWP 201346)]
[New Thread 0x7fffa3620700 (LWP 201477)]
[New Thread 0x7fffa2e1f700 (LWP 201478)]
[New Thread 0x7fffa061e700 (LWP 201479)]
[New Thread 0x7fff9de1d700 (LWP 201480)]
[New Thread 0x7fff9b61c700 (LWP 201483)]
[New Thread 0x7fff98e1b700 (LWP 201484)]
[New Thread 0x7fff9661a700 (LWP 201485)]
[New Thread 0x7fff91c18780 (LWP 201583)]
[New Thread 0x7fff91816800 (LWP 201585)]
[New Thread 0x7fff91414880 (LWP 201586)]
[New Thread 0x7fff91012900 (LWP 201588)]
[New Thread 0x7fff90c10980 (LWP 201589)]
[New Thread 0x7fff9080ea00 (LWP 201590)]
[New Thread 0x7fff9040ca80 (LWP 201591)]
[New Thread 0x7fff73ffeb00 (LWP 201592)]
[New Thread 0x7fff73bfcb80 (LWP 201593)]
[New Thread 0x7fff737fac00 (LWP 201594)]
[New Thread 0x7fff733f8c80 (LWP 201595)]
[New Thread 0x7fff72ff6d00 (LWP 201596)]
[New Thread 0x7fff72bf4d80 (LWP 201597)]
[New Thread 0x7fff727f2e00 (LWP 201598)]
[New Thread 0x7fff723f0e80 (LWP 201599)]
[New Thread 0x7fff71feef00 (LWP 201600)]
[New Thread 0x7fff717ecf80 (LWP 201602)]
[New Thread 0x7fff713eb000 (LWP 201603)]
[New Thread 0x7fff70fe9080 (LWP 201605)]
[New Thread 0x7fff70be7100 (LWP 201606)]
[New Thread 0x7fff707e5180 (LWP 201608)]
[New Thread 0x7fff3bfff200 (LWP 201610)]
[New Thread 0x7fff3bbfd280 (LWP 201611)]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fff3bbfd280 (LWP 201611)]
0x00007fffacf632f3 in mkl_blas_avx512_xdscal ()
from /opt/intel/compilers_and_libraries_2019.4.243/linux/mkl/lib/intel64/libmkl_avx512.so
Missing separate debuginfos, use: debuginfo-install bzip2-libs-1.0.6-13.el7.x86_64 expat-2.1.0-10.el7_3.x86_64 fontconfig-2.13.0-4.3.el7.x86_64 freetype-2.8-12.el7_6.1.x86_64 glibc-2.17-260.el7_6.6.x86_64 libX11-1.6.5-2.el7.x86_64 libXau-1.0.8-2.1.el7.x86_64 libXcursor-1.1.15-1.el7.x86_64 libXext-1.3.3-3.el7.x86_64 libXfixes-5.0.3-1.el7.x86_64 libXft-2.3.2-2.el7.x86_64 libXinerama-1.1.3-2.1.el7.x86_64 libXrender-0.9.10-1.el7.x86_64 libpng-1.5.13-7.el7_2.x86_64 libuuid-2.23.2-59.el7_6.1.x86_64 libxcb-1.13-1.el7.x86_64 mesa-libGLU-9.0.0-4.el7.x86_64 zlib-1.2.7-18.el7.x86_64
(gdb) backtrace full
#0 0x00007fffacf632f3 in mkl_blas_avx512_xdscal ()
from /opt/intel/compilers_and_libraries_2019.4.243/linux/mkl/lib/intel64/libmkl_avx512.so
No symbol table info available.
#1 0x00007fffb3f52609 in mkl_blas_xdscal ()
from /opt/intel/compilers_and_libraries_2019.4.243/linux/mkl/lib/intel64/libmkl_core.so
No symbol table info available.
#2 0x00007fffb1a8b5b2 in mkl_blas_dscal ()
from /opt/intel/compilers_and_libraries_2019.4.243/linux/mkl/lib/intel64/libmkl_intel_thread.so
No symbol table info available.
#3 0x00007fffbcb80ed3 in __kmp_invoke_microtask ()
from /opt/intel/compilers_and_libraries/linux/lib/intel64/libiomp5.so
No symbol table info available.
#4 0x00007fffbcb43726 in __kmp_invoke_task_func (gtid=1002390336)
at ../../src/kmp_runtime.cpp:7421
this_thr = 0x7fff71bb4f00
team = 0x7fff91df2b00
dummy = 0x7fff3bbf4790
exit_runtime_p = 0x7fff3bbf3ed0
#5 0x00007fffbcb4271c in __kmp_launch_thread (this_thr=0x7fff3bbf4340)
at ../../src/kmp_runtime.cpp:6008
gtid = 1908100928
pteam = 0x7fff71bb4f40
thread_data = 0x17
#6 0x00007fffbcb8130b in _INTERNAL_26_______src_z_Linux_util_cpp_20354e55::__kmp_launch_worker (
thr=0x7fff3bbf4340) at ../../src/z_Linux_util.cpp:585
status = 0
old_type = 0
old_state = 0
padding = 0x7fff3bbf4850
gtid = 23
#7 0x00007ffff6e6fdd5 in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#8 0x00007ffff6b9902d in clone () from /lib64/libc.so.6
No symbol table info available.
I am not knowledgeable about these but I got no such issue with OpenBLAS built Julia. So I sense it's related to some incompatibility with MKL, especially the AVX512, based on the debugging information.
So far I only find getElementProperties
would crash, others like getElements
,getNodes
orgetEntitiesForPhysicalGroup
all work perfectly. Again sorry for this mess. I would be appreciated for any insight to help me deal with it.
Update:
I also notice generate 3D mesh (using demo t3.jl
) would cause `Intel MKL ERROR: Parameter 11 was incorrect on entry to DGESVD.
Best, Pengcheng