[Smeagol-discuss] running example file

asa aravindh mails2asa at gmail.com
Thu Feb 12 12:02:32 GMT 2009


Dear all..
Sorry to post  again... But I really dnt know what is happening..
I am not able to run smeagol in parallel..Our cluster has nodes with Xeon
processors (EM64T) with IA32 Architecture.  We use ifort & IntelMKL
(10.0.3.020)  version.  The program stops with
error all the time...like
--------------------------------------------------------
stepf: Fermi-Dirac step function
Terminating due to failed diagonalisation
Stopping Program
p0_30545:  p4_error: : 1
--------------------------------------------------------------
I hereby paste my arch.make and makefiles so that , if anybody can point out
any errors in my compilation..
------------------------
arch.make file
-----------------------
SIESTA_ARCH=x86_64-unknown-linux-gnu--unknown
#
FC=mpif90
FC_ASIS=$(FC)

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

FFLAGS=  -O1 -mp1  -DMPI
LDFLAGS= -O1
COMP_LIBS=
TRANSPORTFLAGS= -O2 -mp1 -c

SOURCE_DIR=/home/rocks2/smathi/test/smeagol.1.0b
EXEC = smeagol

NETCDF_LIBS=-L/home/opt/lib -lnetcdf -lnetcdff
NETCDF_INTERFACE=libnetcdf_f90.a
DEFS_CDF=-DCDF

MPI_INTERFACE=libmpi_f90.a
MPI_INCLUDE=/home/opt/mpich/include
DEFS_MPI=-DMPI

BLACS_LIBS=-L/home/opt/intel/mkl/10.0.3.020/lib/em64t -lmkl_blacs_lp64
SCALAPACK_LIBS=-L/home/opt/intel/mkl/10.0.3.020/lib/em64t-lmkl_scalapack_lp64

BLAS_LIBS=-L/home/opt/intel/mkl/10.0.3.020/lib/em64t -lmkl_intel_lp64
-lmkl_intel_thread -lguide -lsvml -lmkl_core -L/usr/lib64 -lpthread
LAPACK_LIBS=-L/home/opt/intel/mkl/10.0.3.020/lib/em64t -lmkl_lapack

LIBS= $(SCALAPACK_LIBS) $(BLACS_LIBS) $(LAPACK_LIBS) $(BLAS_LIBS)
$(NETCDF_LIBS)
RANLIB=echo
SYS=nag
DEFS= $(DEFS_CDF) $(DEFS_MPI)
#
.F.o:
        $(FC) -c $(FFLAGS)  $(DEFS) $<
.f.o:
        $(FC) -c $(FFLAGS)   $<
.F90.o:
        $(FC) -c $(FFLAGS)  $(DEFS) $<
.f90.o:
        $(FC) -c $(FFLAGS)   $<

-------------------------------------------------------------------------------------------------------------------------------------------

Makefile
------------------
Makefile for siesta
#
.SUFFIXES: .f .F .o .a  .f90 .F90
#
#
VPATH= ./ : ../NETransport/ : ../Interface : ../smeagolpack
#
default: what siesta gen-basis
#
include arch.make
#
# Uncomment the following line for debugging support
#
#FFLAGS=$(FFLAGS_DEBUG)
#
what:
        @echo
        @echo "Compilation architecture to be used: ${SIESTA_ARCH}"
        @echo "If this is not what you want, create the right"
        @echo "arch.make file using the models in Sys"
        @echo
        @echo "Hit ^C to abort..."
        @sleep 2
#
SYSOBJ=$(SYS).o
#
# Note that machine-specific files are now in top Src directory.
#
OBJS = arw.o  atomlwf.o bands.o bessph.o cgwf.o chkdim.o chkgmx.o \
        chempot.o coceri.o conjgr.o constr.o coxmol.o cross.o \
        denmat.o detover.o dfscf.o dhscf.o diagon.o digcel.o fft3d.o \
        diagg.o diagk.o diagkp.o diag2g.o diag2k.o diagpol.o \
        diagsprl.o dipole.o dismin.o dnaefs.o dot.o dynamics.o \
        efield.o egandd.o ener3.o extrapol.o extrapolon.o \
        fermid.o fixed.o forhar.o gradient.o grdsam.o \
        hsparse.o idiag.o  initatom.o initdm.o inver.o \
        iodm.o iohs.o iolwf.o iorho.o ioxv.o ipack.o \
        kgrid.o kgridinit.o kinefsm.o ksv.o ksvinit.o \
        madelung.o matel.o meshmatrix.o memory.o meshsubs.o \
        minvec.o mulliken.o naefs.o neighb.o nlefsm.o \
        on_subs.o ordern.o outcell.o outcoor.o overfsm.o \
        paste.o pdos.o pdosg.o pdosk.o phirphi.o pixmol.o plcharge.o \
        timestamp.o propor.o pulayx.o  \
        ranger.o ran3.o recipes.o reclat.o redata.o redcel.o\
        reinit.o reord.o rhoofd.o rhoofdsp.o rhooda.o  \
        savepsi.o shaper.o timer.o \
        vmb.o vmat.o vmatsp.o volcel.o xc.o xijorb.o  \
        cellxc.o cdiag.o rdiag.o \
        cgvc.o iocg.o ioeig.o iofa.o iokp.o iomd.o repol.o typecell.o \
        ofc.o poison.o readsp.o radfft.o  \
        siesta.o io.o\
        spin_init.o coor.o transfer.o\
        broadcast_basis.o sig.o eggbox.o
#linpack.o

#
FDF=libfdf.a
$(FDF):
        (cd fdf ; $(MAKE) module)
#
# Routines using fdf calls.
#
dhscf.o initdm.o iodm.o iohs.o iolwf.o iorho.o grdsam.o : $(FDF)
recoor.o outcoor.o ioxv.o kgrid.o kgridinit.o ksv.o : $(FDF)
redata.o siesta.o diagon.o pdos.o plcharge.o: $(FDF)
coor.o cgvc.o iocg.o ioeig.o iofa.o iokp.o iomd.o repol.o ofc.o : $(FDF)
readsp.o eggbox.o reademtr.o : $(FDF)
#
atom.o basis_specs.o: $(FDF)
gen-basis.o: $(FDF)

TRANSPORTOBJ= leads_complex.o negf.o identify.o \
        diagonal_alex.o misc.o selfenergy.o gauleg.o transm.o \
        invert.o decimate_leads.o gensvd.o rank.o negfk.o negf2g.o \
        negf2k.o localdos.o gaucheb.o

INTERFACEOBJ = dmbk.o emt2g.o emt2k.o emtg.o emtk.o emtrans.o \
        bulktrans.o vmattr.o vvbias.o hsleads.o hsl.o hslk.o \
        reademtr.o pasbias.o shifth.o absdiff.o

TRANSPORT=NETransport
$(TRANSPORT): $(TRANSPORTOBJ)

INTERFACE=Smeagol_Siesta
$(INTERFACE): $(INTERFACEOBJ)

#       If you don't want to use your own LINPACK subroutines
#       you should comment the lines below
#

LINPACK=linpack.smeagol.a
$(LINPACK):
        (cd ../linpack; $(FC) $(TRANSPORTFLAGS) *.f; \
         ar -rv linpack.smeagol.a *.o; \
         mv linpack.smeagol.a $(SOURCE_DIR)/Src)

LINPACKOBJ = dcabs1.o  zgedi.o  zgefa.o
dcabs1.o zgedi.o zgefa.o : $(LINPACK)

#       If want to use SIESTA provided LINPACK subroutines
#       contained in file linpack.F you should uncomment
#       the lines below
#
#LINPACKOBJ=linpack.o
#LINPACK=linpack
#$(LINPACK): $(LINPACKOBJ)

#       If you wish to provide your own lapack driver
#       subroutines you should uncomment the following lines
#
#SMEAGOLLAPACK = lapack.smeagol.a
#$(SMEAGOLLAPACK):
#       (cd ../smeagolpack; $(FC) $(TRANSPORTFLAGS) *.f;\
#        ar -rv lapack.smeagol.a *.o; \
#        mv lapack.smeagol.a $(SOURCE_DIR)/Src)

#SMEAGOLPACKOBJ = zsytf2.o zsytrf.o zsytri.o ieeeck.o ilaenv.o zgebal.o
#SMEAGOLPACKOBJ = zsytf2.o zsytrf.o zsytri.o

#SMEAGOLLAPACK = Smeagol_lapack
#$(SMEAGOLLAPACK) : $(SMEAGOLPACKOBJ)

#       If you wish to use vendor specific lapack driver
#       subroutines you should uncomment the following lines
#
#SMEAGOLLAPACK =
#SMEAGOLPACKOBJ=

# This is crude but will have to do for now.
# Note : precision must be the first module
#
MOD_OBJS=precision.o atom.o atmparams.o atmfuncs.o listsc.o \
         memoryinfo.o numbvect.o  parallel.o sorting.o \
         atomlist.o ionew.o atm_types.o old_atmfuncs.o radial.o parsing.o\
         alloc.o phonon.o spher_harm.o periodic_table.o version.o \
         basis_types.o pseudopotential.o basis_specs.o sys.o basis_io.o\
         chemical.o xml.o writewave.o
COM_OBJS=$(OBJS) $(SYSOBJ)
ALL_OBJS=$(MOD_OBJS) $(COM_OBJS)
#
arw.o: ionew.o
initatom.o: basis_specs.o basis_types.o basis_io.o
atom.o: basis_types.o
basis_specs.o: pseudopotential.o basis_types.o chemical.o
basis_types.o: pseudopotential.o atmparams.o
atom.o initatom.o transfer.o plcharge.o    : old_atmfuncs.o
basis_types.o atom.o old_atmfuncs.o atmfuncs.o: atmparams.o
atomlwf.o dhscf.o dnaefs.o                 : atmfuncs.o
efield.o matel.o mulliken.o outcoor.o : atmfuncs.o
overfsm.o shaper.o                                : atmfuncs.o
atomlist.o                                        : atmfuncs.o
kinefsm.o naefs.o nlefsm.o overfsm.o              : atmfuncs.o
siesta.o          : atmfuncs.o phonon.o ordern.o hsparse.o
redata.o          : phonon.o
dfscf.o hsparse.o : atmfuncs.o listsc.o
rhoofd.o rhoofdsp.o vmat.o vmatsp.o vmattr.o  : listsc.o
hsparse.o minvec.o : sorting.o
chempot.o         : numbvect.o
memory.o          : memoryinfo.o
dhscf.o dfscf.o forhar.o rhooda.o rhoofd.o rhoofdsp.o : meshsubs.o
vmat.o vmatsp.o vmattr.o vvbias.o: meshsubs.o
dfscf.o rhoofd.o rhoofdsp.o vmat.o vmatsp.o vmattr.o : meshmatrix.o
siesta.o: atomlist.o
old_atmfuncs.o atomlist.o siesta.o atom.o: ionew.o
coor.o: atomlist.o
radial.o: xml.o
atm_types.o: radial.o
transfer.o: atm_types.o atmfuncs.o radial.o periodic_table.o
atmfuncs.o: atm_types.o radial.o
old_atmfuncs.o atmfuncs.o matel.o: spher_harm.o
#
diag2g.o diag2k.o diagg.o diagk.o diagkp.o diagsprl.o ionew.o: sys.o
atmfuncs.o atom.o basis_specs.o: sys.o
chkdim.o coor.o diagpol.o matel.o old_atmfuncs.o periodic_table.o: sys.o
pdos.o: xml.o atmfuncs.o atomlist.o
propor.o spher_harm.o pseudopotential.o: sys.o
redata.o dhscf.o: sys.o
#----------------------------------------------------
matel.o basis_io.o atom.o : radfft.o
#
basis_io.o: ionew.o atm_types.o atmfuncs.o radial.o sys.o chemical.o\
            basis_types.o xml.o
basis_io.o: $(FDF) $(NETCDF_INTERFACE)
siesta.o bands.o efield.o fixed.o grdsam.o writewave.o: parsing.o
initdm.o repol.o ksv.o: parsing.o
#
siesta.o atomlist.o coor.o dfscf.o matel.o: alloc.o
#
broadcast_basis.o: atm_types.o
atom.o basis_specs.o: periodic_table.o
#
$(COM_OBJS): precision.o parallel.o $(MPI_INTERFACE)
#
# Interfaces to libraries
#
libmpi_f90.a:
        @(cd MPI ; $(MAKE) )
libnetcdf_f90.a:
        @(cd NetCDF ; $(MAKE) )
#
# Libraries that might need to be compiled
#
linalg.a: Libs/blas.f Libs/lapack.f
        @echo "==> Compiling linalg.a in Libs..."
        @(cd Libs ; $(MAKE) linalg.a)
dc_lapack.a:  Libs/dc_lapack.f
        @echo "==> Compiling dc_lapack.a in Libs..."
        @(cd Libs ; $(MAKE) dc_lapack.a)
#
version:
        @echo
        @echo "==> Information about compiler and flags"
        sed  "s/SIESTA_ARCH/${SIESTA_ARCH}/g" version.F90 > temp0.F90
#       sed  "s/FFLAGS/${FC} ${LDLAGS}/g" temp0.F90 > temp.F90
        sed  "s/FFLAGS/ ${FLAGS}/g" temp0.F90 > temp.F90
        $(FC) -c $(FFLAGS) $(DEFS) temp.F90
        @rm -f temp0.F90 temp.F90
        @mv temp.o version.o
        @echo

siesta: version $(MPI_INTERFACE) $(NETCDF_INTERFACE) $(FDF) \
                $(COMP_LIBS) $(ALL_OBJS) $(TRANSPORT) $(LINPACK) \
                $(INTERFACE) $(SMEAGOLLAPACK)
        $(FC) -o $(EXEC) \
               $(LDFLAGS) $(ALL_OBJS) $(FDF) \
               $(TRANSPORTOBJ) $(LINPACK) $(INTERFACEOBJ)\
               $(MPI_INTERFACE) $(SMEAGOLPACKOBJ)\
               $(NETCDF_INTERFACE) $(COMP_LIBS) $(LIBS)
#
GEN-BASIS_OBJS=gen-basis.o basis_types.o precision.o\
          basis_io.o  chemical.o transfer.o atm_types.o\
          atmparams.o atmfuncs.o old_atmfuncs.o radial.o spher_harm.o io.o \
          paste.o memoryinfo.o memory.o ionew.o \
          chkdim.o basis_specs.o atom.o periodic_table.o\
          pseudopotential.o dot.o xc.o recipes.o arw.o radfft.o\
          bessph.o sys.o timer.o  xml.o $(SYSOBJ)
# precision must be the first one here...
gen-basis.o: precision.o atom.o basis_types.o basis_specs.o basis_io.o
$(FDF)
gen-basis: version $(NETCDF_INTERFACE) $(MPI_INTERFACE) $(FDF) \
                $(COMP_LIBS) $(GEN-BASIS_OBJS)
        $(FC) -o gen-basis \
               $(LDFLAGS) $(GEN-BASIS_OBJS) $(MPI_INTERFACE) $(FDF) \
               $(NETCDF_INTERFACE) $(COMP_LIBS) $(LIBS)
#
clean:
        @echo "==> Cleaning object, library, and executable files"
        rm -f siesta gen-basis *.o  *.a *.pc *.pcl
        rm -f *.mod
        (cd fdf ; $(MAKE) clean)
        @if [ -d MPI ] ; then (cd MPI && $(MAKE) clean ) ; fi
        (cd NetCDF ; $(MAKE) clean )
        (cd Libs ; $(MAKE) clean )
        (cd ../doc/ ; rm -f *.ps *.aux *.log *.toc *.dvi)
pristine:  clean
        cp -fp Include/constr.f .
#
cleantransp:
        rm -f $(TRANSPORTOBJ)
        rm -f $(INTERFACEOBJ)
        rm -f $(LINPACKOBJ) $(SMEAGOLPACKOBJ)

doc :
        (cd ../doc/ ; latex smeagol.tex ; latex smeagol.tex; dvips -o
smeagol_doc.ps smeagol.dvi)

---------------------------------------------------------------------------------------------------------------------------------------

Thanks in advance
Asa
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.tchpc.tcd.ie/pipermail/smeagol-discuss/attachments/20090212/75e96ff1/attachment-0001.html 


More information about the Smeagol-discuss mailing list