intel 17+

Asked by David Guzman on 2018-05-15

Hello Nick,
Just wondering if you are aware of any known issues when compiling TranSiesta with intel 17+ fortran compilers?
I successfully compiled siesta and transiesta with intel-17.0.1.132 but at run time Transiesta ends with a seg fault right after the SCF and before starting the transiesta run. Any thought?

Thank you so much for your help,
David Guzman
Purdue University

Question information

Language:
English Edit question
Status:
Answered
For:
Siesta Edit question
Assignee:
No assignee Edit question
Last query:
2018-05-16
Last reply:
2018-05-21
Nick Papior (nickpapior) said : #1

Please:

1) State the siesta version
2) Show the compilation options

3) If you use the correct compilation options siesta and *any* intel compiler works well.
See intel.make in the Obj directory for details. And also, don't do -O3.

David Guzman (guzmand) said : #2

Hello Nick,

1) I am working with the 4.1_b3 version

2) Attached the makefile I am using

Thanks for your help,
David

David Guzman (guzmand) said : #3

Could find how to attach the file. I just copy/paste it

Thanks,
David

#
# This file is part of the SIESTA package.
#
# Copyright (c) Fundacion General Universidad Autonoma de Madrid:
# E.Artacho, J.Gale, A.Garcia, J.Junquera, P.Ordejon, D.Sanchez-Portal
# and J.M.Soler, 1996- .
#
# Use of this software constitutes agreement with the full conditions
# given in the SIESTA license, as signed by all legitimate users.
#
.SUFFIXES:
.SUFFIXES: .f .F .o .a .f90 .F90

SIESTA_ARCH=intel/16.0.1.150_openmpi/1.10.1@halstead
MKLROOT=/apps/cent7/intel/compilers_and_libraries_2016.1.150/linux/mkl #/apps/rhel6/intel/compilers_and_libraries_2016.1.150/linux/mkl
MKL_PATH=/apps/cent7/intel/compilers_and_libraries_2016.1.150/linux/mkl/lib/intel64
FPP=
FPP_OUTPUT=
FC=mpif90
RANLIB=ranlib

SYS=nag

SP_KIND=4
DP_KIND=8
KINDS=$(SP_KIND) $(DP_KIND)

FFLAGS= -O2 -xSSE4.2 -ip -mp1 -fpp -heap-arrays 1024 -warn unused,truncated_source,uncalled,declarations,usage
FFLAGS_DEBUG= -g
#LDFLAGS=-Vaxlib
#for Transieta compilation choose
FPPFLAGS= -DFC_HAVE_FLUSH -DFC_HAVE_ABORT -DMPI -DGRID_DP -DPHI_GRID_SP
#for SIESTA compilation choose
#FPPFLAGS= -DFC_HAVE_FLUSH -DFC_HAVE_ABORT -DMPI -DCDF -DGRID_DP -DPHI_GRID_SP
INCFLAGS=$(NETCDF_INCLUDE)

ARFLAGS_EXTRA=

FCFLAGS_fixed_f=
FCFLAGS_free_f90=
FPPFLAGS_fixed_F=
FPPFLAGS_free_F90=

BLAS_LIBS=-L/apps/cent7/intel/compilers_and_libraries_2016.1.150/linux/compiler/lib/intel64 -L/apps/cent7/intel/compilers_and_libraries_2016.1.150/linux/mkl/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -Xlinker -rpath -Xlinker /apps/cent7/intel/compilers_and_libraries_2016.1.150/linux/mkl/lib/intel64 -Xlinker -rpath -Xlinker /apps/cent7/intel/compilers_and_libraries_2016.1.150/linux/compiler/lib/intel64
LAPACK_LIBS=-L/apps/cent7/intel/compilers_and_libraries_2016.1.150/linux/compiler/lib/intel64 -L/apps/cent7/intel/compilers_and_libraries_2016.1.150/linux/mkl/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -Xlinker -rpath -Xlinker /apps/cent7/intel/compilers_and_libraries_2016.1.150/linux/mkl/lib/intel64 -Xlinker -rpath -Xlinker /apps/cent7/intel/compilers_and_libraries_2016.1.150/linux/compiler/lib/intel64
BLACS_LIBS=
SCALAPACK_LIBS=-L/apps/cent7/intel/compilers_and_libraries_2016.1.150/linux/mkl/lib/intel64 -lmkl_scalapack_lp64 -lmkl_blacs_openmpi_lp64

NETCDF_LIBS=-L/apps/cent7/netcdf/4.5.0_intel-16.0.1.150_hdf5-1.8.16/lib -lnetcdff -lnetcdf
HDF5_LIBS=-L/apps/cent7/hdf5/1.8.16_intel-16.0.1.150/lib -lhdf5_fortran -lhdf5 -lz
NETCDF_INCLUDE=-I/apps/cent7/netcdf/4.5.0_intel-16.0.1.150_hdf5-1.8.16/include
FPPFLAGS += -DCDF
#DEFS_CDF=-DCDF
#NETCDF_INTERFACE=

COMP_LIBS += libncdf.a libfdict.a
FPPFLAGS += -DNCDF -DNCDF_4

LIBS=$(SCALAPACK_LIBS) $(BLACS_LIBS) $(LAPACK_LIBS) $(BLAS_LIBS) $(NETCDF_LIBS) $(HDF5_LIBS) $(COMP_LIBS)

#SIESTA needs an F90 interface to MPI
#This will give you SIESTA's own implementation
#If your compiler vendor offers an alternative, you may change
#to it herebmpi_f90.
MPI_INTERFACE= libmpi_f90.a
MPI_INCLUDE=/usr/local/openmpi/include

#Dependency rules are created by autoconf according to whether
#discrete preprocessing is necessary or not.
.F.o:
 $(FC) -c $(FFLAGS) $(INCFLAGS) $(FPPFLAGS) $(FPPFLAGS_fixed_F) $<
.F90.o:
 $(FC) -c $(FFLAGS) $(INCFLAGS) $(FPPFLAGS) $(FPPFLAGS_free_F90) $<
.f.o:
 $(FC) -c $(FFLAGS) $(INCFLAGS) $(FCFLAGS_fixed_f) $<
.f90.o:
 $(FC) -c $(FFLAGS) $(INCFLAGS) $(FCFLAGS_free_f90) $<

Nick Papior (nickpapior) said : #4

I here list my arch.make using intel-18.0.1.
I used the equivalent flags for the intel version you state.

Please consult your local compilation wizard for suggestions, and if still having problems then please carefully follow: https://answers.launchpad.net/siesta/+faq/2779
regarding the optimization flags.

PP = cpp -E -P -C -nostdinc
LIBS=$(ADDLIB) -lelpa -lmkl_scalapack_lp64 -lmkl_blacs_openmpi_lp64 -lmkl_lapack95_lp64 -lmkl_blas95_lp64
LIBS+= -lmkl_intel_lp64 -lmkl_core -lmkl_sequential

LDFLAGS=-L/opt/intel/2018update1/compilers_and_libraries_2018.1.163/linux//mkl/lib/intel64 -Wl,-rpath=/opt/intel/2018update1/compilers_and_libraries_2018.1.163/linux//mkl/lib/intel64 -L/opt/intel/2018update1/compilers_and_libraries_2018.1.163/linux//compiler/lib/intel64 -L/opt/intel/2018update1/compilers_and_libraries_2018.1.163/linux//mkl/lib/intel64 -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/zlib/1.2.11/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/generic/numactl/2.0.11/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/libxml2/2.9.7/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/hwloc/1.11.9/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/openmpi/3.0.0/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/szip/2.1.1/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/hdf5/1.8.18/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/pnetcdf/1.8.1/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/netcdf/4.6.0/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/flook/0.7.0/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/parmetis/4.0.3/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/scotch/6.0.4/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/mumps/5.1.2/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/fftw/3.3.7/intel-18.0.1/lib -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/elpa/2017.05.003/intel-18.0.1/lib -Wl,-rpath=/opt/intel/2018update1/compilers_and_libraries_2018.1.163/linux//compiler/lib/intel64 -Wl,-rpath=/opt/intel/2018update1/compilers_and_libraries_2018.1.163/linux//mkl/lib/intel64 -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/zlib/1.2.11/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/generic/numactl/2.0.11/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/libxml2/2.9.7/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/hwloc/1.11.9/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/openmpi/3.0.0/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/szip/2.1.1/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/hdf5/1.8.18/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/pnetcdf/1.8.1/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/netcdf/4.6.0/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/flook/0.7.0/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/parmetis/4.0.3/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/scotch/6.0.4/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/mumps/5.1.2/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/fftw/3.3.7/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/elpa/2017.05.003/intel-18.0.1/lib
FPPFLAGS= -I/opt/intel/2018update1/compilers_and_libraries_2018.1.163/linux//compiler/include -I/opt/intel/2018update1/compilers_and_libraries_2018.1.163/linux//mkl/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/zlib/1.2.11/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/generic/numactl/2.0.11/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/libxml2/2.9.7/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/hwloc/1.11.9/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/openmpi/3.0.0/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/szip/2.1.1/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/hdf5/1.8.18/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/pnetcdf/1.8.1/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/netcdf/4.6.0/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/flook/0.7.0/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/parmetis/4.0.3/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/scotch/6.0.4/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/mumps/5.1.2/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/fftw/3.3.7/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/elpa/2017.05.003/intel-18.0.1/include -DSIESTA__ELPA

.SUFFIXES:
.SUFFIXES: .f .F .o .a .f90 .F90 .c
SIESTA_ARCH=x86_64-linux-n-62-18-18

FPP=mpif90
FPP_OUTPUT=
CC=icc
FC=mpif90
FC_SERIAL=ifort
AR=xiar
RANLIB=ranlib
SYS=nag
SP_KIND=4
DP_KIND=8
KINDS=$(SP_KIND) $(DP_KIND)

FFLAGS=-m64 -fPIC -O2 -xHost -prec-div -prec-sqrt -fp-model source -qopt-prefetch
FFLAGS += #OMPPLACEHOLDER
FPPFLAGS += -DMPI -DFC_HAVE_FLUSH -DFC_HAVE_ABORT -DCDF -DCDF4

ARFLAGS_EXTRA=

NETCDF_INCFLAGS= -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/netcdf/4.6.0/intel-18.0.1/include
NETCDF_LIBS= -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/netcdf/4.6.0/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/netcdf/4.6.0/intel-18.0.1/lib
ADDLIB=-lnetcdff -lnetcdf -lpnetcdf -lhdf5_hl -lhdf5 -lz
ADDLIB += #OMPPLACEHOLDER
INCFLAGS = -I/opt/intel/2018update1/compilers_and_libraries_2018.1.163/linux//compiler/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/zlib/1.2.11/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/generic/numactl/2.0.11/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/libxml2/2.9.7/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/hwloc/1.11.9/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/openmpi/3.0.0/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/szip/2.1.1/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/hdf5/1.8.18/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/pnetcdf/1.8.1/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/netcdf/4.6.0/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/flook/0.7.0/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/parmetis/4.0.3/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/scotch/6.0.4/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/mumps/5.1.2/intel-18.0.1/include -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/fftw/3.3.7/intel-18.0.1/include

MPI_INTERFACE=libmpi_f90.a
MPI_INCLUDE=.

FPPFLAGS += -DSIESTA__METIS -DSIESTA__MUMPS -DTS_NOCHECKS
ADDLIB += -lzmumps -lmumps_common -lesmumps -lscotch -lscotcherr -lpord -lparmetis -lmetis
METIS_LIB = -lmetis
FFTW_PATH = /zdata/groups/common/nicpa/2018-feb/XeonE5-2665/fftw/3.3.7/intel-18.0.1
FFTW_INCFLAGS = -I$(FFTW_PATH)/include
FFTW_LIBS = -L$(FFTW_PATH)/lib -lfftw3 $(METIS_LIB)
LIBS += $(METIS_LIB)
FPPFLAGS += -DNCDF -DNCDF_4 -DNCDF_PARALLEL
COMP_LIBS += libncdf.a libfdict.a
FPPFLAGS += -DSIESTA__FLOOK
FLOOK_LIB = -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/flook/0.7.0/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/flook/0.7.0/intel-18.0.1/lib -lflookall -ldl
INCFLAGS += -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/flook/0.7.0/intel-18.0.1/include
LIBS += $(FLOOK_LIB)

FPPFLAGS += -DSIESTA__ELPA
ELPA_LIB = -L/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/elpa/2017.05.003/intel-18.0.1/lib -Wl,-rpath=/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/elpa/2017.05.003/intel-18.0.1/lib -lelpa
INCFLAGS += -I/zdata/groups/common/nicpa/2018-feb/XeonE5-2665/elpa/2017.05.003/intel-18.0.1/include/elpa
LIBS += $(ELPA_LIB)

FPPFLAGS += -DSIESTA__MRRR

.F.o:
 $(FC) -c $(FFLAGS) $(INCFLAGS) $(FPPFLAGS) $<
.F90.o:
 $(FC) -c $(FFLAGS) $(INCFLAGS) $(FPPFLAGS) $<
.f.o:
 $(FC) -c $(FFLAGS) $(INCFLAGS) $<
.c.o:
 $(CC) -c $(CFLAGS) $(INCFLAGS) $(FPPFLAGS) $<
.f90.o:
 $(FC) -c $(FFLAGS) $(INCFLAGS) $<

atom.o: atom.F
 $(FC) -c -O1 $(INCFLAGS) $(FPPFLAGS) $<

m_new_dm.o: m_new_dm.F90
 $(FC) -c -O2 $(INCFLAGS) $(FPPFLAGS) $<

Can you help with this problem?

Provide an answer of your own, or ask David Guzman for more information if necessary.

To post a message you must log in.