[Wien] Installation error in parallel mode of wien2k_13

Pavel Ondracka pavel.ondracka at email.cz
Thu Dec 4 11:56:04 CET 2014


Dear Mamta,

compiler errors
- Logicals at (1) must be compared with .eqv. instead of .eq.
- Nonnegative width required in format string at (1)
are some known problems in the old Wien2k versions mentioned previously:
https://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/msg11247.html

On my desktop (Fedora 20) I can compile latest Wien2k (14.2) serial and
k-point paralel version without any problems with GNU Fortran 4.8.3 

Regarding the mpi problems, you are probably missing some libraries (or
they are in some place where Wien can't find then).
The key line to find out what are you missing is this linker error: 
/usr/bin/ld: cannot find -lpblas
so it seems you are missing at least pblas, maybe more.

However it is really hard to compile the mpi version of Wien with open
source stack if you don't know what you are doing and you will probably
need to compile some of the needed libraries by yourself.

For the beginning I would suggest to try the latest Wien2k version and
get the serial and k-point parallel version running. 

When you have done this, next step would be to compile your optimized
BLAS and LAPACK libraries (as those provided by distributions are
usually not optimized enough). Optimized OpenBLAS should be comparable
to MKL with speed at least on Intel hardware:
http://www.openblas.net/dgemm_snb_1thread.png .
And you can even get some additional parallelisation at the BLAS level
with the k-point parallelisation or serial Wien2k.

If you you can get all this running maybe you will be able to tackle the
mpi compilation.

Best regards
Pavel Ondračka


On Thu, 2014-12-04 at 15:00 +0530, Mamta Chauhan wrote:
> Dear Users,
> 
> 
> I am installing wien2k_13 in parallel mode on ubuntu 10.04. For
> compilation I used gfortran and gcc options. other options selected
> were as follows
> 
> Recommended options for system linuxgfortran are:
>      Compiler options:        -ffree-form -O2 -ffree-line-length-none
>      Linker Flags:            $(FOPT) -L../SRC_lib
>      Preprocessor flags:      '-DParallel'
>      R_LIB (LAPACK+BLAS):     -llapack_lapw -lblas_lapw -llapack_lapw
> -lblas_lapw
> 
> Current settings:
>  O   Compiler options:        -ffree-form -O2 -ffree-line-length-none
>  F   FFTW options:            -DFFTW2 -I/usr/include
>  L   Linker Flags:            $(FOPT) -L../SRC_lib
>  P   Preprocessor flags       '-DParallel'
>  R   R_LIB (LAPACK+BLAS):     -llapack_lapw -lblas_lapw -lblas
> -llapack
>  FL  FFTW_LIBS:               -lfftw_mpi -lfftw -L/usr/lib
>  S   Save and Quit
>  Q   Quit abandon changes
> 
> Selection: P
> 
> 
>    **********************************
>    *  Configure parallel execution  *
>    **********************************  
>        
>    These options are stored in   parallel_options  of WIENROOT
>    You can change them later also manually.
> 
>    Do you use ONLY a shared memory parallel architecture (ONE single
> multi-core 
>    node)  ?
> 
> 
>    On shared memory system it is normally better to start jobs in the 
>    background rather than using remote commands. If you select a
> shared memory 
>    system WIEN will by default not use remote shell commands 
>    (USE_REMOTE and MPI_REMOTE = 0 in parallel_options)
>    and set the default granularity to 1. 
>    
>    You still can override this default granularity in your .machines
> file.
> 
>    You may also set a specific TASKSET command to bind your
> executables
>    to a specific core on multicore machines.   
>   Shared Memory Architecture? (y/N):y
>   Do you know/need a command to bind your jobs to specific nodes ?
>   (like taskset -c). Enter N / your_specific_command: n
> 
>    ********************************************************
>    Do you have MPI, Scalapack and FFTW installed and intend to run
>    finegrained parallel? 
> 
>    This is useful only for BIG cases (50 atoms and more / unit cell) 
>    and your HARDWARE has at least 16 cores (or is a cluster with
> Infiniband)
>    You need to KNOW details about your installed  MPI and FFTW )
> 
>    (y/n) y
>      Recommended setting for parallel f90 compiler: mpif90
>      Current selection:   
> 
>      Your compiler: mpif90
> 
> 
>  Finding the required fftw2/3 mpi-files in /usr and /opt ....
>  
> could not find fftw3 ....
> /usr/lib/libfftw_mpi.a
> Your present FFTW choice is: FFTW2
> Please specify whether you want to use FFTW3 (default) or FFTW2
> (FFTW3 / FFTW2): FFTW2
> Present FFTWpath is: /usr 
> Please specify the ROOT-path of your FFTW installation
> (like /opt/fftw3): 
>  
> Your FFTW_LIBS are: -lfftw_mpi -lfftw -L/usr/lib 
> Your FFTW_OPT are : -DFFTW2 -I/usr/include 
>  
> is this correct? enter Y (default) or n: y
>  
>    You need to specify MPI and Scalapack libraries in         RP_LIBS,
>                        options for parallel compilation in    FPOPT
>                        how to run mpi jobs              in    MPIRUN
>    (during execution _NP_ will be substituted by the "number of
> processors"
>                      _EXEC_                   by the "executable"
>                  and _HOSTS_                  by the machines
> filename) 
> 
>    Recommended options for system linuxgfortran are:
> 
>          RP_LIB(SCALAPACK+PBLAS): -L/usr/local/SCALAPACK
> -L/usr/local/BLACS/LIB -lpblas -lredist -ltools -lscalapack -lfblacs
> -lblacs -lmpi 
>          FPOPT(par.comp.options): -ffree-form -O2
> -ffree-line-length-none
>          MPIRUN commando        : mpirun -np _NP_ -machinefile _HOSTS_
> _EXEC_
> 
>    Current settings:
> 
>          FFTW_LIB + FFTW_OPT    : -lfftw_mpi -lfftw -L/usr/lib  +
> -DFFTW2 -I/usr/include (already set)
>      RP  RP_LIB(SCALAPACK+PBLAS): -L/usr/local/SCALAPACK
> -L/usr/local/BLACS/LIB -lpblas -lredist -ltools -lscalapack -lfblacs
> -lblacs -lmpi 
>      FP  FPOPT(par.comp.options): -ffree-form -O2
> -ffree-line-length-none
>      MP  MPIRUN commando        : mpirun -np _NP_ -machinefile _HOSTS_
> _EXEC_
> 
>      S   Save and Quit
>      Q   Quit abandon changes
> 
>      To change an item select option.
> 
> 
> After compilation I got following errors.
> 
> Compile time errors (if any) were:
> SRC_IRelast/compile.msg:Error: Old-style type declaration REAL*16 not
> supported at (1)
> SRC_IRelast/compile.msg:make: *** [TWS.o] Error 1
> SRC_Tmaker/compile.msg:Error: Nonnegative width required in format
> string at (1)
> SRC_Tmaker/compile.msg:Error: Nonnegative width required in format
> string at (1)
> SRC_Tmaker/compile.msg:Error: FORMAT label 1025 at (1) not defined
> SRC_Tmaker/compile.msg:Error: FORMAT label 1025 at (1) not defined
> SRC_Tmaker/compile.msg:Error: FORMAT label 1007 at (1) not defined
> SRC_Tmaker/compile.msg:Error: FORMAT label 1007 at (1) not defined
> SRC_Tmaker/compile.msg:make: *** [Tmaker.o] Error 1
> SRC_dstart/compile.msg:make[1]: *** [dstart_mpi] Error 1
> SRC_dstart/compile.msg:make: *** [para] Error 2
> SRC_hf/compile.msg:make[1]: *** [hf_mpi] Error 1
> SRC_hf/compile.msg:make: *** [rp] Error 2
> SRC_hf/compile.msg:make[1]: *** [hfc_mpi] Error 1
> SRC_hf/compile.msg:make: *** [cp] Error 2
> SRC_lapw0/compile.msg:Error: Logicals at (1) must be compared
> with .eqv. instead of .eq.
> SRC_lapw0/compile.msg:make[1]: *** [pwxad5.o] Error 1
> SRC_lapw0/compile.msg:make: *** [seq] Error 2
> SRC_lapw0/compile.msg:Error: Logicals at (1) must be compared
> with .eqv. instead of .eq.
> SRC_lapw0/compile.msg:make[1]: *** [pwxad5.o] Error 1
> SRC_lapw0/compile.msg:make: *** [para] Error 2
> SRC_lapw1/compile.msg:make[1]: *** [lapw1_mpi] Error 1
> SRC_lapw1/compile.msg:make: *** [rp] Error 2
> SRC_lapw1/compile.msg:make[1]: *** [lapw1c_mpi] Error 1
> SRC_lapw1/compile.msg:make: *** [cp] Error 2
> SRC_lapw2/compile.msg:make[1]: *** [lapw2_mpi] Error 1
> SRC_lapw2/compile.msg:make: *** [rp] Error 2
> SRC_lapw2/compile.msg:make[1]: *** [lapw2c_mpi] Error 1
> SRC_lapw2/compile.msg:make: *** [cp] Error 2
> SRC_lapwso/compile.msg:Error: IF clause at (1) requires a scalar
> LOGICAL expression
> SRC_lapwso/compile.msg:make[1]: *** [modules.o] Error 1
> SRC_lapwso/compile.msg:make: *** [para] Error 2
> SRC_nmr/compile.msg:make[1]: *** [nmr_mpi] Error 1
> SRC_nmr/compile.msg:make: *** [rp] Error 2
> SRC_nmr/compile.msg:make[1]: *** [nmrc_mpi] Error 1
> SRC_nmr/compile.msg:make: *** [cp] Error 2
> 
> 
> I checked the compile.msg file for example of hf folder I got the
> found
> 
> ..........
> ......
> mpif90  -o ./hfc_mpi abc.o add_hvxhfvc.o add_hvxsl_int.o
> add_hvxsl_sph.o atpar.o c3fft.o calc_abc_hf.o calc_abc_sl.o calc_cnk.o
> calc_exhf.o calc_exhfcc.o calc_exhfvc.o calc_exhfvv.o calc_gaunt.o
> calc_gaunt_vxsl.o calc_h.o calc_ifflim.o calc_indices.o
> calc_overlap_sph.o calc_rhovalvxsl.o calc_tdde.o calc_tddh.o
> calc_theta.o calc_ucuchucuc.o calc_uu.o calc_uuchucu.o calc_uuchucuh.o
> calc_uuguu.o calc_uuguuh.o calc_uui.o calc_uuih.o calc_uvxslug.o
> calc_vxsltheta.o cbcomb.o charg2.o charg3.o charge.o cputim.o
> create_stars.o dergl.o diracout.o dvbes1.o errclr.o errflg.o
> fftw_seq.o gaunt.o getfft.o gtfnam.o hf.o ifflim.o inouh.o inth.o
> latgen.o lomain.o make_alms.o modules.o msbi.o msbj.o msbk.o notri.o
> opnfs.o order_cnk.o outerr.o outwin.o ph.o read_cnk.o read_input.o
> read_rhoval.o read_struct.o read_uc.o read_vxsl.o read_weight.o
> rint13.o rotate.o rotdef.o setfft.o sphbes.o sphi.o sphk.o stern.o
> t3j.o t3j0.o W2kinit.o W2kutils.o ylm.o -ffree-form -O2
> -ffree-line-length-none -DFFTW2 -I/usr/include -L../SRC_lib -lfftw_mpi
> -L/usr/local/SCALAPACK -L/usr/local/BLACS/LIB -lpblas -lredist -ltools
> -lscalapack -lfblacs -lblacs -lmpi 
> /usr/bin/ld: cannot find -lpblas
> collect2: ld returned 1 exit status
> make[1]: *** [hfc_mpi] Error 1
> make[1]: Leaving directory `/home/sosfizix/wien2k/SRC_hf'
> make: *** [cp] Error 2
> 
> 
> please suggest me whats wrong is there.
> 
> 
> Regards
> 
> Mamta
> 
> 
> 
> 
> 
> _______________________________________________
> Wien mailing list
> Wien at zeus.theochem.tuwien.ac.at
> http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
> SEARCH the MAILING-LIST at:  http://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/index.html




More information about the Wien mailing list