Page 1 of 1

Parallel Installation Issue (Intel 14, OpenMPI 1.7.4, FFTW 3.3.2, VASP 5.3.3)

Posted: Fri Jul 11, 2014 5:43 am
by Lev Lafayette
Hi VASPers,

I'm having a few issues with a parallel installation and I hope you can point me in the right direction.

These are the steps I've done.

- - -
module list
Currently Loaded Modulefiles:
1) intel/14.0.0 2) openmpi-intel/1.7.4 3) fftw/3.3.2-intel
cd vasp.5.lib
make: `libdmy.a' is up to date.
cd ../vasp,5.3
fftmpiw.F(440): error #6460: This is not a field name that is defined in the encompassing structure. [NODE_ME]
compilation aborted for fftmpiw.f90 (code 1)
make: *** [fftmpiw.o] Error 1
- - -

Makefile minus comments etc follows:

- - -
.SUFFIXES: .inc .f .f90 .F
CPP_ = ./preprocess <$*.F | /usr/bin/cpp -P -C -traditional >$*$(SUFFIX)
CPP_=fpp -f_com=no -free -w0 $*.F $*$(SUFFIX)
CPP = $(CPP_) -DHOST=\"LinuxIFC\" \
-DCACHE_SIZE=12000 -DPGF90 -Davoidalloc -DNGXhalf \
FFLAGS = -FR -names lowercase -assume byterecl
OFLAG=-O2 -ip
LAPACK= ../vasp.5.lib/lapack_double.o
LIB = -L../vasp.5.lib -ldmy \
../vasp.5.lib/linpack_double.o $(LAPACK) \
FFT3D = fft3dfurth.o fft3dlib.o
FFT3D = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o /usr/local/fftw/3.3.2-intel/lib/libfftw3.a
BASIC= symmetry.o symlib.o lattlib.o random.o
SOURCE= base.o mpi.o smart_allocate.o xml.o \
constant.o jacobi.o main_mpi.o scala.o \
asa.o lattice.o poscar.o ini.o mgrid.o xclib.o vdw_nl.o xclib_grad.o \
radial.o pseudo.o gridq.o ebs.o \
mkpoints.o wave.o wave_mpi.o wave_high.o spinsym.o \
$(BASIC) nonl.o nonlr.o nonl_high.o dfast.o choleski2.o \
mix.o hamil.o xcgrad.o xcspin.o potex1.o potex2.o \
constrmag.o cl_shift.o relativistic.o LDApU.o \
paw_base.o metagga.o egrad.o pawsym.o pawfock.o pawlhf.o rhfatm.o hyperfine.o paw.o \
mkpoints_full.o charge.o Lebedev-Laikov.o stockholder.o dipol.o pot.o \
dos.o elf.o tet.o tetweight.o hamil_rot.o \
chain.o dyna.o k-proj.o sphpro.o us.o core_rel.o \
aedens.o wavpre.o wavpre_noio.o broyden.o \
dynbr.o hamil_high.o rmm-diis.o reader.o writer.o tutor.o xml_writer.o \
brent.o stufak.o fileio.o opergrid.o stepver.o \
chgloc.o fast_aug.o fock_multipole.o fock.o mkpoints_change.o sym_grad.o \
mymath.o internals.o npt_dynamics.o dynconstr.o dimer_heyden.o dvvtrajectory.o vdwforcefield.o \
nmr.o pead.o subrot.o subrot_scf.o \
force.o pwlhf.o gw_model.o optreal.o steep.o davidson.o david_inner.o \
electron.o rot.o electron_all.o shm.o pardens.o paircorrection.o \
optics.o constr_cell_relax.o stm.o finite_diff.o elpol.o \
hamil_lr.o rmm-diis_lr.o subrot_cluster.o subrot_lr.o \
lr_helper.o hamil_lrf.o elinear_response.o ilinear_response.o \
linear_optics.o \
setlocalpp.o wannier.o electron_OEP.o electron_lhf.o twoelectron4o.o \
mlwf.o ratpol.o screened_2e.o wave_cacher.o chi_base.o wpot.o \
local_field.o ump2.o ump2kpar.o fcidump.o ump2no.o \
bse_te.o bse.o acfdt.o chi.o sydmat.o dmft.o \
rmm-diis_mlr.o linear_response_NMR.o wannier_interpol.o linear_response.o
vasp: $(SOURCE) $(FFT3D) $(INC) main.o
rm -f vasp
$(FCL) -o vasp main.o $(SOURCE) $(FFT3D) $(LIB) $(LINK)
makeparam: $(SOURCE) $(FFT3D) makeparam.o main.F $(INC)
$(FCL) -o makeparam $(LINK) makeparam.o $(SOURCE) $(FFT3D) $(LIB)
zgemmtest: zgemmtest.o base.o random.o $(INC)
$(FCL) -o zgemmtest $(LINK) zgemmtest.o random.o base.o $(LIB)
dgemmtest: dgemmtest.o base.o random.o $(INC)
$(FCL) -o dgemmtest $(LINK) dgemmtest.o random.o base.o $(LIB)
ffttest: base.o smart_allocate.o mpi.o mgrid.o random.o ffttest.o $(FFT3D) $(INC)
$(FCL) -o ffttest $(LINK) ffttest.o mpi.o mgrid.o random.o smart_allocate.o base.o $(FFT3D) $(LIB)
kpoints: $(SOURCE) $(FFT3D) makekpoints.o main.F $(INC)
$(FCL) -o kpoints $(LINK) makekpoints.o $(SOURCE) $(FFT3D) $(LIB)
-rm -f *.g *.f *.o *.L *.mod ; touch *.F
main.o: main$(SUFFIX)
$(FC) $(FFLAGS)$(DEBUG) $(INCS) -c main$(SUFFIX)
xcgrad.o: xcgrad$(SUFFIX)
$(FC) $(FFLAGS) $(INLINE) $(INCS) -c xcgrad$(SUFFIX)
xcspin.o: xcspin$(SUFFIX)
$(FC) $(FFLAGS) $(INLINE) $(INCS) -c xcspin$(SUFFIX)

makeparam.o: makeparam$(SUFFIX)
$(FC) $(FFLAGS)$(DEBUG) $(INCS) -c makeparam$(SUFFIX)
makeparam$(SUFFIX): makeparam.F main.F
base.o: base.F
mgrid.o: mgrid.F
constant.o: constant.F
lattice.o: lattice.F
setex.o: setex.F
pseudo.o: pseudo.F
mkpoints.o: mkpoints.F
wave.o: wave.F
nonl.o: nonl.F
nonlr.o: nonlr.F
$(FC) $(FFLAGS) $(INCS) -c $*$(SUFFIX)
fft3dlib_f77.o: fft3dlib_f77.F
$(F77) $(FFLAGS_F77) -c $*$(SUFFIX)
$(FC) $(FFLAGS) $(OFLAG) $(INCS) -c $*$(SUFFIX)
$(FC) $(FFLAGS) $(OFLAG) $(INCS) -c $*$(SUFFIX)
fft3dlib.o : fft3dlib.F
$(FC) -FR -lowercase -O2 -c $*$(SUFFIX)
fft3dfurth.o : fft3dfurth.F
$(FC) -FR -lowercase -O1 -c $*$(SUFFIX)
fftw3d.o : fftw3d.F
$(FC) -FR -lowercase -O1 $(INCS) -c $*$(SUFFIX)
fftmpi.o : fftmpi.F
$(FC) -FR -lowercase -O1 -c $*$(SUFFIX)
fftmpiw.o : fftmpiw.F
$(FC) -FR -lowercase -O1 $(INCS) -c $*$(SUFFIX)
wave_high.o : wave_high.F
$(FC) -FR -lowercase -O1 -c $*$(SUFFIX)
# the following rules are probably no longer required (-O3 seems to work)
wave.o : wave.F
$(FC) -FR -lowercase -O2 -c $*$(SUFFIX)
paw.o : paw.F
$(FC) -FR -lowercase -O2 -c $*$(SUFFIX)
cl_shift.o : cl_shift.F
$(FC) -FR -lowercase -O2 -c $*$(SUFFIX)
us.o : us.F
$(FC) -FR -lowercase -O2 -c $*$(SUFFIX)
$(FC) -FR -lowercase -O2 -c $*$(SUFFIX)
- - -

Thanks in advance!

<span class='smallblacktext'>[ Edited ]</span>

Parallel Installation Issue (Intel 14, OpenMPI 1.7.4, FFTW 3.3.2, VASP 5.3.3)

Posted: Fri Jul 11, 2014 8:04 am
by alex
Hi Lev,

the fftmpiw.F is the interface for FFTW version of FFT. I'm not sure which version is included with Intel's MKL.



Parallel Installation Issue (Intel 14, OpenMPI 1.7.4, FFTW 3.3.2, VASP 5.3.3)

Posted: Mon Jul 14, 2014 1:07 am
by Lev Lafayette
Hi Alex,

Thanks for the reply. As our makefile should indicate, we're not using the MKL, we're using fftw

FFT3D = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o /usr/local/fftw/3.3.2-intel/lib/libfftw3.a

Not sure why it's coming up with that make error given this..

Parallel Installation Issue (Intel 14, OpenMPI 1.7.4, FFTW 3.3.2, VASP 5.3.3)

Posted: Sun Jul 20, 2014 5:38 pm
by beck
Dear Lev,
did you intend to build a seriell version? Why then compiling the fftmpi file? If you intend to build a parallel version shouldn't you use the -DMPI directive in the CPP-command, and use the intel mpi-compiler (mpif90 or so)? I dont think that the normal ifort will do mpi-compiling out of the box, or am I missing something?