[Smeagol-discuss] Fw: Re: Fw: Re: fw:parallel compilation problem

Ivan Rungger runggeri at tcd.ie
Fri Feb 13 15:08:34 GMT 2009


Hello Ambavale,

   the error message you get is due to the fortran compiler not
recognizing the format of the file. You have to check which compiler
your mpif90 calls internally.

Ideally I suggest to compiler everything with ifort if you have it (also
the fortran part of the libraries), so that the mpif90 calls internally
ifort too.

Cheers,

 Ivan


ambavale sagar wrote:
> Dear Ivan and all,
> I tried to compile parallel smeagol using gcc (4.1) compiled atlas
> (3.8.2),
>  lapack (3.2) and lam-mpi (7.1.4). Two suspicious things I did were ,
>
> (1)I didn't export lam bin, lib or include path
> by defining ld_library_path.. in /etc/profile.d/ as I have previously
> installed lam-mpi (with ifort).
> I just defined them with path in arch.make file of smeagol.
> (2) mpif77 was created in ../../../lam/bin directory after lam
> compilation. I just copied it to mpif90.
>
> This gives a error while compiling: (the arch.make file is next to the
> error report below )
>
> Please give me an idea about source of the error I got (and solution
> too..).
>
>
> Kind regards
> Sagar Ambavale
> M.S. Uni. of Baroda, India
>
> *********************
> Error report:
>
> /home/sagar/Public/lam-7.1.4/lam/bin/mpif90 -c     sig.f
> /home/sagar/Public/lam-7.1.4/lam/bin/mpif90 -c   -DMPI -DFC_HAVE_FLUSH
> -DFC_HAVE_ABORT    eggbox.F
> /home/sagar/Public/lam-7.1.4/lam/bin/mpif90 -c   -DMPI -DFC_HAVE_FLUSH
> -DFC_HAVE_ABORT    linpack.F
> /home/sagar/Public/lam-7.1.4/lam/bin/mpif90 -c     bsd.f
> /home/sagar/Public/lam-7.1.4/lam/bin/mpif90 -c   -DMPI -DFC_HAVE_FLUSH
> -DFC_HAVE_ABORT    ../NETransport/leads_complex.F
> /home/sagar/Public/lam-7.1.4/lam/bin/mpif90 -c   -DMPI -DFC_HAVE_FLUSH
> -DFC_HAVE_ABORT    ../NETransport/negf.F
>  In file ../NETransport/negf.F:195
>
>        CHARACTER(LEN=1), ALLOCATABLE, SAVE :: side_rankL(:),side_rankR(:
>                                                                        1
> Error: Expected another dimension in array declaration at (1)
>  In file ../NETransport/negf.F:322
>
>         ALLOCATE(numberL(NSPIN),numberR(NSPIN),side_rankL(NSPIN),      
>                                                         1
> Error: Syntax error in ALLOCATE statement at (1)
>  In file ../NETransport/negf.F:483
>
>          CALL MPI_BCAST(Nenerg_div,1,MPI_INTEGER,0,MPI_COMM_WORLD,MPIerr
>                                                                        1
> Error: Syntax error in argument list at (1)
>  In file ../NETransport/negf.F:550
>
>          ALLOCATE(EiCompL(Nenerg_div),EiCompR(Nenerg_div),CONST(Nenerg_d
>                                                                        1
> Error: Invalid form of array reference at (1)
>  In file ../NETransport/negf.F:690
>
>             Print*, 'The condition number of the matrix H1 was too large
>                    1
> Error: Unterminated character constant beginning at (1)
>  In file ../NETransport/negf.F:777
>
>          ALLOCATE(rho0L(N1,N1,NSPIN),rho0R(N1,N1,NSPIN))               
>                       1
> Error: Syntax error in ALLOCATE statement at (1)
>  In file ../NETransport/negf.F:802
>
>          ELSE IF ((Iprime+MyNode*NenergImNode).LE.NEnerg1+NEnerg2+NPOLES
>                1
> Error: Unexpected junk after ELSE statement at (1)
>  In file ../NETransport/negf.F:821
>
>          ELSE IF ((Iprime+MyNode*NenergImNode).LE.NEnerg1+NEnerg2+NPOLES
>                1
> Error: Unexpected junk after ELSE statement at (1)
>  In file .../NETransport/negf.F:840
>
>              rho0L(II,JJ,ISPIN)=rho0L(II,JJ,ISPIN)+                    
>             1
> Error: Unclassifiable statement at (1)
>  In file ../NETransport/negf.F:863
>
>          CALL MPI_REDUCE(rho0L(1,1,1),rho0L_par(1,1,1),N1*N1*NSPIN,    
>                              1
> Error: Syntax error in argument list at (1)
>  In file ../NETransport/negf.F:872
>
>          ALLOCATE(DeltarhoL(N1,N1,NSPIN),DeltarhoR(N1,N1,NSPIN))       
>                                                  1
> Error: Syntax error in ALLOCATE statement at (1)
>  In file ../NETransport/negf.F:970
>
>                DeltarhoR(II,JJ,ISPIN)=DeltarhoR(II,JJ,ISPIN) +         
>               1
> Error: Unclassifiable statement at (1)
>  In file ../NETransport/negf.F:1055
>
>          CALL MPI_REDUCE(DeltarhoR(1,1,1),DrhoR_par(1,1,1),            
>                                  1
> Error: Syntax error in argument list at (1)
>  In file ../NETransport/negf.F:1128
>
>          IF ((abs(EnergMin).gt.1.D-20).or.(abs(EnergMax).gt.1.D-20)) THE
>                                                                     1
> Error: Unclassifiable statement in IF-clause at (1)
>  In file ../NETransport/negf.F:1214
>
>            Ic(ISPIN)=Ic(ISPIN)+eh_const*DREAL(CONST(I)*Ic_aux(J)*(fL-fR)
>                                                                        1
> Error: Syntax error in argument list at (1)
>  In file ../NETransport/negf.F:1268
>
>        ENDIF                                                           
>          1
> Error: Expecting END SUBROUTINE statement at (1)
>  In file ../NETransport/negf.F:874
>
>         DeltarhoR=0.D0                                                 
>                 1
> Error: Symbol 'deltarhor' at (1) has no IMPLICIT type
>  In file ../NETransport/negf.F:513
>
>            CALL GAULEG(EnergIntmax,EnergF,EX(Nenerg_div*Nnodes-Nsmall_di
>                                                                        1
> Error: Symbol 'nsmall_di' at (1) has no IMPLICIT type
>  In file ../NETransport/negf.F:778
>
>         rho0L=0.D0                                                     
>             1
> Error: Symbol 'rho0l' at (1) has no IMPLICIT type
>  In file ../NETransport/negf.F:331
>
>           Call RANK(NL,S1_L,H1_L(:,:,ISPIN),side_rankL(ISPIN))         
>                                            1
> Error: Function 'side_rankl' at (1) has no IMPLICIT type
>  In file ../NETransport/negf.F:332
>
>           If (side_rankL(ISPIN) .NE. '0') Then                         
>              1
> Error: Function 'side_rankl' at (1) has no IMPLICIT type
>  In file ../NETransport/negf.F:334
>
>            Call GENSVD(NL,S1_L,H1_L(:,:,ISPIN),side_rankL(ISPIN),      
>                                               1
> Error: Function 'side_rankl' at (1) has no IMPLICIT type
>  In file ../NETransport/negf.F:347
>
>           Call RANK(NR,S1_R,H1_R(:,:,ISPIN),side_rankR(ISPIN))         
>                                            1
> Error: Function 'side_rankr' at (1) has no IMPLICIT type
>  In file ../NETransport/negf.F:348
>
>           If (side_rankR(ISPIN) .NE. '0') Then                         
>              1
> Error: Function 'side_rankr' at (1) has no IMPLICIT type
>  In file ../NETransport/negf.F:349
>
>            Call GENSVD(NR,S1_R,H1_R(:,:,ISPIN),side_rankR(ISPIN),      
>                                               1
> Error: Function 'side_rankr' at (1) has no IMPLICIT type
>  In file ../NETransport/negf.F:382
>
>      &    MPI_COMM_WORLD,MPIerror)                                     
>                                                                        1
> Error: There is no specific subroutine for the generic 'mpi_bcast' at (1)
>  In file ../NETransport/negf.F:402
>
>      &    MPI_COMM_WORLD,MPIerror)                                     
>                                                                        1
> Error: There is no specific subroutine for the generic 'mpi_bcast' at (1)
>  In file ../NETransport/negf.F:678
>
>            CALL SELFENERGY('L',side_rankL(ISPIN),numberL(ISPIN),NL,    
>                               1
> Error: Function 'side_rankl' at (1) has no IMPLICIT type
>  In file ../NETransport/negf.F:683
>
>              CALL SELFENERGY('R',side_rankR(ISPIN),numberR(ISPIN),NR,  
>                                 1
> Error: Function 'side_rankr' at (1) has no IMPLICIT type
> /home/sagar/Public/lam-7.1.4/lam/bin/mpif90: No such file or directory
> make: *** [negf.o] Error 1
> [sagar at hawkings Src]$
>
>
>
> **********************************************************
>
> My arch.make file is as below:
>
>
>
> .SUFFIXES:
> .SUFFIXES: .f .F .o .a .f90 .F90
>
> SIESTA_ARCH=intel10
>
> SOURCE_DIR=/home/sagar/pr-gcc-smgl/smeagol.1.0b
> EXEC = smglgccpara
>
> FPP=
> FPP_OUTPUT=
> FC=/home/sagar/Public/lam-7.1.4/lam/bin/mpif90
> #FC=mpif90
> FC_ASIS=$(FC)
> #RANLIB=ranlib
> RANLIB=echo
>
> SYS=bsd
>
> SP_KIND=4
> DP_KIND=8
> KINDS=$(SP_KIND) $(DP_KIND)
>
> FFLAGS=  -w -O3 -c
> FPPFLAGS= -DMPI -DFC_HAVE_FLUSH -DFC_HAVE_ABORT
> LDFLAGS= -Vaxlib
> TRANSPORTFLAGS = -w -O3 -c
>
> COMP_LIBS=linalg.a dc_lapack.a
>
> NETCDF_LIBS=-lnetcdf
> NETCDF_INTERFACE=libnetcdf_f90.a
> DEFS_CDF=-DCDF
>
> MPI_INTERFACE=libmpi_f90.a
> MPI_INCLUDE=/home/sagar/Public/lam-7.1.4/lam/include
> MPI_LIBS= -L/home/sagar/Public/lam-7.1.4/lam/bin/lib -llamf77mpi
> -llmpi -llam -lnsl
> #MPI_LIBS= -L/home/sagar/Public/lam-7.1.4/lam/bin/lib -llmpi
> DEFS_MPI=-DMPI
>
> DEFS= $(DEFS_CDF) $(DEFS_MPI)
>
> LAPACK_LIBS=-L/usr/local/atlas/lib -llapack
> BLAS_LIBS=-L/usr/local/atlas/lib -lblas
> LIBS_PATH=-L/usr/local/atlas/lib
>
> LIBS= $(LIBS_PATH) $(NETCDF_LIBS) $(MPI_LIBS) $(SCALAPACK_LIBS)
> $(BLACS_LIBS) \
>       $(GUIDE) $(LAPACK_LIBS) $(BLAS_LIBS) $(OTHER_LIBS) \
>     /home/sagar/pr-gcc-smgl/smeagol.1.0b/Src/MPI/Interfaces.o
> -lpthread -lguide
>
> #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)  $<
>
>
>
>
>
>
>
> --- On *Fri, 30/1/09, Ivan Rungger /<runggeri at tcd.ie>/* wrote:
>
>     From: Ivan Rungger <runggeri at tcd.ie>
>     Subject: Re: Fw: Re: [Smeagol-discuss] Fw: Re: fw:parallel
>     compilation problem
>     To: sagarambavale at yahoo.co.in
>     Date: Friday, 30 January, 2009, 10:06 PM
>
>     Hello Sagar,
>
>       problems with compiling and running a code in parallel are very
>     general and occur often. I have compiled smeagol and also other codes on
>     a lot (!) of different architectures. Usually it is quite straight
>     forward, however it often involves trying out different libraries,
>     different versions of mpi (mpich, openmpi, ...), and different
>     compilers. It is often difficult to say why one compiler, or one set of
>     libraries, works or not. It is sometimes a tedious work, however I don't
>     think it is wasted time, since by trying out all these things one learns
>     a lot about how compilers, computers work.
>
>     Cheers,
>
>      Ivan
>
>
>               
>
>
> ------------------------------------------------------------------------
> Connect with friends all over the world. Get Yahoo! India Messenger.
> <http://in.rd.yahoo.com/tagline_messenger_1/*http://in.messenger.yahoo.com/?wm=n/>



-- 
=================================================
Ivan Rungger,

School of Physics and CRANN,  
Trinity College Dublin,  
Dublin 2,  IRELAND  
Phone: +353-1-8968454  
Email: runggeri at tcd.ie
=================================================



More information about the Smeagol-discuss mailing list