[Pw_forum] Installing problem (MPI error) with QE5.2.0
张满红
zhangmanhong at ncepu.edu.cn
Mon Sep 28 09:24:43 CEST 2015
Dear all,
I am new here and a bignner to use QE. I just installed QE5.2.0 in my computers.
My linux OS is RHLnix 6.5. I use Intel composer xe 2015: icc, ifort, MKL and MPI.
1) The following is the output from RHLinux 6.5 for ./configure CC=icc FC=ifort MPIF90=mpiifort:
configure output:
checking build system type... x86_64-unknown-linux-gnu
detected architecture... x86_64
checking for Fortran compiler default output file name... a.out
checking whether the Fortran compiler works... yes
checking whether we are cross compiling... yes
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU Fortran compiler... no
checking whether ifort accepts -g... yes
checking for Fortran flag to compile .f90 files... none
checking for mpiifort... mpiifort
checking whether we are using the GNU Fortran compiler... no
checking whether mpiifort accepts -g... yes
checking version of mpiifort... ifort 15.0.1.133
setting F90... ifort
setting MPIF90... mpiifort
checking whether we are using the GNU C compiler... yes
checking whether icc accepts -g... yes
checking for icc option to accept ISO C89... none needed
setting CC... icc
checking how to run the C preprocessor... icc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking size of int *... 8
checking malloc.h usability... yes
checking malloc.h presence... yes
checking for malloc.h... yes
checking for struct mallinfo.arena... yes
checking for ifort... ifort
checking whether we are using the GNU Fortran 77 compiler... no
checking whether ifort accepts -g... yes
setting F77... ifort
using F90... ifort
setting FFLAGS... -O2 -assume byterecl -g -traceback
setting F90FLAGS... $(FFLAGS) -nomodule
setting FFLAGS_NOOPT... -O0 -assume byterecl -g -traceback
setting FFLAGS_NOMAIN... -nofor_main
setting CFLAGS... -O3
setting CPP... cpp
setting CPPFLAGS... -P -C -traditional
setting LD... mpiifort
setting LDFLAGS...
setting AR... ar
setting ARFLAGS... ruv
checking whether make sets $(MAKE)... yes
checking whether Fortran files must be preprocessed... no
checking how to get verbose linking output from ifort... -v
checking for Fortran 77 libraries of ifort... -L/opt/intel/composer_xe_2015.1.133/compiler/lib/intel64 -L/opt/intel/composer_xe_2015.1.133/mkl/lib/intel64 -L/opt/intel/composer_xe_2015.1.133/ipp/../compiler/lib/intel64 -L/opt/intel/composer_xe_2015.1.133/ipp/lib/intel64 -L/opt/intel/composer_xe_2015.1.133/tbb/lib/intel64/gcc4.4 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7/ -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/ -L/lib/../lib64 -L/lib/../lib64/ -L/usr/lib/../lib64 -L/usr/lib/../lib64/ -L/opt/intel/composer_xe_2015.1.133/compiler/lib/intel64/ -L/opt/intel/composer_xe_2015.1.133/mkl/lib/intel64/ -L/opt/intel/composer_xe_2015.1.133/ipp/../compiler/lib/intel64/ -L/opt/intel/composer_xe_2015.1.133/ipp/lib/intel64/ -L/opt/intel/composer_xe_2015.1.133/tbb/lib/intel64/gcc4.4/ -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../ -L/lib64 -L/lib/ -L/usr/lib64 -L/usr/lib -lifport -lifcore -limf -lsvml -lm -lipgo -lirc -lpthread -lirc_s -ldl
checking for dummy main to link with Fortran 77 libraries... none
checking for Fortran 77 name-mangling scheme... lower case, underscore, no extra underscore
checking for library containing dgemm... -lmkl_intel_lp64
checking for library containing dspev... none required
setting BLAS_LIBS... -lmkl_intel_lp64 -lmkl_sequential -lmkl_core
setting LAPACK_LIBS...
checking for library containing dfftw_execute_dft... no
in /usr/local/lib: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/compiler/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/mkl/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/impi/5.0.2.044/intel64/lib: checking for library containing dfftw_execute_dft... no
in /opt/intel/impi/5.0.2.044/intel64/lib: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/compiler/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/mpirt/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/ipp/../compiler/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/ipp/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/compiler/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/mkl/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/tbb/lib/intel64/gcc4.4: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/compiler/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/mkl/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/impi/5.0.2.044/intel64/lib: checking for library containing dfftw_execute_dft... no
in /opt/intel/impi/5.0.2.044/intel64/lib: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/compiler/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/mpirt/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/ipp/../compiler/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/ipp/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/compiler/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/mkl/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/tbb/lib/intel64/gcc4.4: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/compiler/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/mkl/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/impi/5.0.2.044/intel64/lib: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/compiler/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/mpirt/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/ipp/../compiler/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/ipp/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/compiler/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/mkl/lib/intel64: checking for library containing dfftw_execute_dft... no
in /opt/intel/composer_xe_2015.1.133/tbb/lib/intel64/gcc4.4: checking for library containing dfftw_execute_dft... no
setting FFT_LIBS...
setting MASS_LIBS...
checking for library containing mpi_init... none required
setting MPI_LIBS...
checking for library containing mpi_init... (cached) none required
checking for library containing pdgemr2d... no
checking for library containing pdgemr2d... no
checking for library containing pdgemr2d... no
checking for library containing pdgemr2d... no
checking for library containing pdgemr2d... no
checking for library containing pdgemr2d... no
setting SCALAPACK_LIBS... -L/bgsys/local/scalapack/lib -lscalapack -L/bgsys/local/blacs/lib -lblacs -lblacsF77init -lblacs
setting DFLAGS... -D__INTEL -D__FFTW -D__MPI -D__PARA
setting IFLAGS... -I../include
setting FDFLAGS... $(DFLAGS)
checking for ranlib... ranlib
setting RANLIB... ranlib
checking for wget... wget -O
setting WGET... wget -O
configure: creating ./config.status
config.status: creating include/fft_defs.h
config.status: creating make.sys
config.status: creating configure.msg
config.status: creating install/make_wannier90.sys
config.status: creating install/make_blas.inc
config.status: creating install/make_lapack.inc
config.status: creating include/c_defs.h
config.status: include/c_defs.h is unchanged
--------------------------------------------------------------------
ESPRESSO can take advantage of several optimized numerical libraries
(essl, fftw, mkl...). This configure script attempts to find them,
but may fail if they have been installed in non-standard locations.
If a required library is not found, the local copy will be compiled.
The following libraries have been found:
BLAS_LIBS= -lmkl_intel_lp64 -lmkl_sequential -lmkl_core
LAPACK_LIBS=
FFT_LIBS=
Please check if this is what you expect.
If any libraries are missing, you may specify a list of directories
to search and retry, as follows:
./configure LIBDIRS="list of directories, separated by spaces"
Parallel environment detected successfully.\
Configured for compilation of parallel executables.
For more info, read the ESPRESSO User's Guide (Doc/users-guide.tex).
--------------------------------------------------------------------
configure: success
2) Then I did some modifications to make.sys, the final file is as following:
make.sys:
# make.sys. Generated from make.sys.in by configure.
# compilation rules
.SUFFIXES :
.SUFFIXES : .o .c .f .f90
# most fortran compilers can directly preprocess c-like directives: use
# $(MPIF90) $(F90FLAGS) -c $<
# if explicit preprocessing by the C preprocessor is needed, use:
# $(CPP) $(CPPFLAGS) $< -o $*.F90
# $(MPIF90) $(F90FLAGS) -c $*.F90 -o $*.o
# remember the tabulator in the first column !!!
.f90.o:
$(MPIF90) $(F90FLAGS) -c $<
# .f.o and .c.o: do not modify
.f.o:
$(F77) $(FFLAGS) -c $<
.c.o:
$(CC) $(CFLAGS) -c $<
# topdir for linking espresso libs with plugins
TOPDIR = /home/mhzhang/QE/espresso-5.2.0
# DFLAGS = precompilation options (possible arguments to -D and -U)
# used by the C compiler and preprocessor
# FDFLAGS = as DFLAGS, for the f90 compiler
# See include/defs.h.README for a list of options and their meaning
# With the exception of IBM xlf, FDFLAGS = $(DFLAGS)
# For IBM xlf, FDFLAGS is the same as DFLAGS with separating commas
# MANUAL_DFLAGS = additional precompilation option(s), if desired
# You may use this instead of tweaking DFLAGS and FDFLAGS
# BEWARE: will not work for IBM xlf! Manually edit FDFLAGS
MANUAL_DFLAGS =
DFLAGS = -D__INTEL -D__FFTW3 -D__MPI -D__PARA $(MANUAL_DFLAGS)
FDFLAGS = $(DFLAGS) $(MANUAL_DFLAGS)
# IFLAGS = how to locate directories where files to be included are
# In most cases, IFLAGS = -I../include
IFLAGS = -I../include
# MOD_FLAGS = flag used by f90 compiler to locate modules
# Each Makefile defines the list of needed modules in MODFLAGS
MOD_FLAG = -I
# Compilers: fortran-90, fortran-77, C
# If a parallel compilation is desired, MPIF90 should be a fortran-90
# compiler that produces executables for parallel execution using MPI
# (such as for instance mpif90, mpf90, mpxlf90,...);
# otherwise, an ordinary fortran-90 compiler (f90, g95, xlf90, ifort,...)
# If you have a parallel machine but no suitable candidate for MPIF90,
# try to specify the directory containing "mpif.h" in IFLAGS
# and to specify the location of MPI libraries in MPI_LIBS
MPIF90 = mpiifort
#F90 = ifort
CC = icc
F77 = ifort
# C preprocessor and preprocessing flags - for explicit preprocessing,
# if needed (see the compilation rules above)
# preprocessing flags must include DFLAGS and IFLAGS
CPP = cpp
CPPFLAGS = -P -C -traditional $(DFLAGS) $(IFLAGS)
# compiler flags: C, F90, F77
# C flags must include DFLAGS and IFLAGS
# F90 flags must include MODFLAGS, IFLAGS, and FDFLAGS with appropriate syntax
CFLAGS = -O3 $(DFLAGS) $(IFLAGS)
F90FLAGS = $(FFLAGS) -nomodule -fpp $(FDFLAGS) $(IFLAGS) $(MODFLAGS)
FFLAGS = -O2 -assume byterecl -g -traceback -I$(MKLROOT)/include/fftw/ -I${MKLROOT}/include/intel64/lp64 -I${MKLROOT}/include
# compiler flags without optimization for fortran-77
# the latter is NEEDED to properly compile dlamch.f, used by lapack
FFLAGS_NOOPT = -O0 -assume byterecl -g -traceback
# compiler flag needed by some compilers when the main is not fortran
# Currently used for Yambo
FFLAGS_NOMAIN = -nofor_main
# Linker, linker-specific flags (if any)
# Typically LD coincides with F90 or MPIF90, LD_LIBS is empty
LD = mpiifort
LDFLAGS = -static-intel
LD_LIBS =
# External Libraries (if any) : blas, lapack, fft, MPI
# If you have nothing better, use the local copy :
# BLAS_LIBS = /your/path/to/espresso/BLAS/blas.a
# BLAS_LIBS_SWITCH = internal
LINK =-Wl,--start-group \
${MKLROOT}/lib/intel64/libmkl_intel_lp64.a \
${MKLROOT}/lib/intel64/libmkl_core.a \
${MKLROOT}/lib/intel64/libmkl_sequential.a \
-Wl,--end-group \
-lpthread -lm
BLAS_LIBS =$(MKLROOT)/lib/intel64/libmkl_blas95_lp64.a \
$(MKLROOT)/lib/intel64/libmkl_lapack95_lp64.a \
$(LINK)
BLAS_LIBS_SWITCH = external
# If you have nothing better, use the local copy :
# LAPACK_LIBS = /your/path/to/espresso/lapack-3.2/lapack.a
# LAPACK_LIBS_SWITCH = internal
# For IBM machines with essl (-D__ESSL): load essl BEFORE lapack !
# remember that LAPACK_LIBS precedes BLAS_LIBS in loading order
LAPACK_LIBS =
LAPACK_LIBS_SWITCH = external
ELPA_LIBS_SWITCH = disabled
SCALAPACK_LIBS =
# nothing needed here if the the internal copy of FFTW is compiled
# (needs -D__FFTW in DFLAGS)
FFT_LIBS = $(MKLROOT)/lib/intel64/libfftw3xf_intel_lp64.a
# For parallel execution, the correct path to MPI libraries must
# be specified in MPI_LIBS (except for IBM if you use mpxlf)
MPI_LIBS = -L$(I_MPI_ROOT)/intel64/lib -lmpi
# IBM-specific: MASS libraries, if available and if -D__MASS is defined in FDFLAGS
MASS_LIBS =
# ar command and flags - for most architectures: AR = ar, ARFLAGS = ruv
AR = ar
ARFLAGS = ruv
# ranlib command. If ranlib is not needed (it isn't in most cases) use
# RANLIB = echo
RANLIB = ranlib
# all internal and external libraries - do not modify
FLIB_TARGETS = all
LIBOBJS = ../flib/ptools.a ../flib/flib.a ../clib/clib.a ../iotk/src/libiotk.a
LIBS = $(SCALAPACK_LIBS) $(LAPACK_LIBS) $(FFT_LIBS) $(BLAS_LIBS) $(MPI_LIBS) $(MASS_LIBS) $(LD_LIBS)
# wget or curl - useful to download from network
WGET = wget -O
# Install directory
PREFIX = $(INSTALLDIR)
3) I had the following error message when running ./check-pw.x.j in /PW/tests
[mhzhang at localhost tests]$ ./check-pw.x.j
Checking atom-lsda...application called MPI_Abort(MPI_COMM_WORLD, 1) - process 0
FAILED with error condition!
Input: atom-lsda.in, Output: atom-lsda.out, Reference: atom-lsda.ref
Aborting
[mhzhang at localhost tests]$
4) Can anyone give me some clues with wrong with my install? Thanks a lot!
PS. I add LINK and BLAS_LIBS based on Intel MKL advisor.
Best
Manhong Zhang
College of Electric and Electrical Engineering
North China Electric Power University
Beijing China
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quantum-espresso.org/pipermail/users/attachments/20150928/d380fa24/attachment.html>
More information about the users
mailing list