compilation - Intel compiler segmentation violation when compiling using -openmp and -ipo with Cray LibSci on Cray XC30 -
i compiling code uses cray libsci numerical library blas , lapack on cray xc30 system using intel compiler "-ipo" flag , including "-openmp" compile openmp-enabled code.
i see following error code try compile:
** segmentation violation signal raised ** access violation or stack overflow. please contact support. ifort: error #10106: fatal error in /opt/intel/composer_xe_2013_sp1.4.211/bin/intel64/fortcom, terminated segmentation violation ifort: error #10014: problem during multi-file optimization compilation (code 1)
this can illustrated simple example:
user@eslogin008:~> cat blas1f.f program blas1f implicit none real*4 x(4), y(4) external sswap data x/2, 3, 4, 5/ data y/5, 4, 9, 2/ call sswap(4, x, 1, y, 1) write (*,*) 'after swap..' end
compiling:
user@eslogin008:~> ftn -ipo -openmp blas1f.f ** segmentation violation signal raised ** access violation or stack overflow. please contact support. ifort: error #10106: fatal error in /opt/intel/composer_xe_2013_sp1.4.211/bin/intel64/fortcom, terminated segmentation violation ifort: error #10014: problem during multi-file optimization compilation (code 1)
excluding either 1 of "-ipo" or "-openmp" flags results in code compiling , running fine.
it threaded (openmp) version of cray libsci library causing problem here. 1 workaround link non-threaded version of library adding "-lsci_intel":
user@eslogin008:~> ftn -ipo -openmp -lsci_intel blas1f.f ipo: remark #11001: performing single-file optimizations ipo: remark #11006: generating object file /tmp/ipo_ifortcbbetg.o
Comments
Post a Comment