Page 1 of 1

yambo_nl -u option is missing

Posted: Thu Dec 30, 2021 10:20 am
by Mike Pionnteck
Dear developers and users,

I compiled yambo 5.0.4 on a HPC to use nonlinear optics. Since on this HPC, I don't have internet access I downloaded all external libraries by running download_all_libs.sh on my local machine and copied the repository to the HPC.

Then I configured with
./configure --enable-memory-profile --enable-time-profile --enable-mpi --enable-dp

Here is the configure report for compiler information etc.:
# [VER] 5.0.4 r.19595
#
# - GENERAL CONFIGURATIONS -
#
# [SYS] linux@x86_64
# [SRC] /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4
# [BRN]
# [CMP] /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4
# [TGT] /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4
# [BIN] /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/bin
# [LIB] /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external
#
# [EDITOR] vim
# [ MAKE ] make
#
# [X] Double precision
# [X] Keep object files
# [X] Run-Time timing profile
# [X] Run-Time memory profile
#
# - SCRIPTS -
#
# [-] YDB: Yambo DataBase
# [-] YAMBOpy: Yambo Python scripts
#
# - PARALLEL SUPPORT -
#
# [X] MPI
# [-] OpenMP
#
# - LIBRARIES [E=external library; I?=internal library (c=to be compiled / f=found already compiled); X=system default; -=not used;] -
#
# > I/O: (NETCDF with large files support)
#
# [ - ] FUTILE :
#
# [ - ] YAML :
#
# [ Ic] IOTK : /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/lib/libiotk.a (QE hdf5-support)
# -I/zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/include/
# [ - ] ETSF_IO :
#
# [ Ic] NETCDF : /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/v4/serial/lib/libnetcdff.a /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/v4/serial/lib/libnetcdf.a
# -I/zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/v4/serial/include -I/zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/v4/serial/include
# [ Ic] HDF5 : /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/v4/serial/lib/libhdf5hl_fortran.a /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/v4/serial/lib/libhdf5_fortran.a /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/v4/serial/lib/libhdf5_hl.a /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/v4/serial/lib/libhdf5.a -lz -lm -ldl -lcurl
# -I/zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/v4/serial/include
#
# > MATH: (Internal FFTW3)
#
# [ Ic] FFT : /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/lib/libfftw3.a
# -I/zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/include/
# [ Ic] BLAS : /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/lib/libblas.a
# [ Ic] LAPACK : /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/lib/liblapack.a
# [ - ] SCALAPACK :
# [ - ] BLACS :
# [ - ] PETSC :
#
# [ - ] SLEPC :
#
#
# > OTHERs
#
# [ Ic] LibXC : /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/lib/libxcf90.a /zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/lib/libxc.a
# -I/zhome/academic/HLRS/tp/xgpmipi/yambo-5.0.4/lib/external/gfortran/mpif90/include
# [ E ] MPI : -L/opt/hlrs/non-spack/mpi/mpt/2.23/lib -lmpi
# -I/opt/hlrs/non-spack/mpi/mpt/2.23/include
# [ Ic] Ydriver : 1.0.0
#
# - COMPILERS -
#
# FC kind = gfortran GNU Fortran (GCC) 9.2.0
# MPI kind= HPE MPT 2.23 08/26/20 02:54:49-root
#
# [ CPP ] /opt/hlrs/non-spack/compiler/gcc/9.2.0/bin/gcc -E -P -D_HDF5_LIB -D_HDF5_IO -D_MPI -D_FFTW -D_DOUBLE -D_TIMING -D_P2Y_QEXSD_HDF5
# [ FPP ] /opt/hlrs/non-spack/compiler/gcc/9.2.0/bin/gfortran -E -P -cpp -D_HDF5_LIB -D_HDF5_IO -D_MPI -D_FFTW -D_DOUBLE -D_TIMING
# [ CC ] mpicc -O2 -D_C_US -D_FORTRAN_US
# [ FC ] mpif90 -O3 -g -mtune=native
# [ FCUF] -O0 -g -mtune=native
# [ F77 ] mpif90 -O3 -g -mtune=native
# [ F77U] -O0 -g -mtune=native
# [Cmain]
#
As you can see, I have used gcc 9.2.0.

Afterwards, I compiled with (make 4.2.1)
make core
make nl-project

This was successful without any errors. Everything worked well except for yambo_nl where the -u option is missing. When I tried ./yambo_nl -h I got
___ __ _____ __ __ _____ _____
| Y || _ || Y || _ \ | _ |
| | ||. | ||. ||. | / |. | |
\ _/ |. _ ||.\ / ||. _ \ |. | |
|: | |: | ||: | ||: | \|: | |
|::| |:.|:.||:.|:.||::. /|::. |
`--" `-- --"`-- --"`-----" `-----"
'A shiny pot of fun and happiness [C.D.Hogan]'

This is : yambo
Version : 5.0.4 Revision 19595 Hash 896bffc02
Configuration: MPI+HDF5_IO

Help & version:
-help (-h) <string> :<string> can be an option (e.g. -h optics)
-version :Code version & libraries

Input file & Directories:
-Input (-F) <string> :Input file
-Verbosity (-V) <string> :Input file variables verbosity (more with -h Verbosity)
-Job (-J) <string> :Job string
-Idir (-I) <string> :Input directory
-Odir (-O) <string> :I/O directory
-Cdir (-C) <string> :Communication directory

Parallel Control:
-parenv (-E) <string> :Environment Parallel Variables file
-nompi :Switch off MPI support

Initializations:
-setup (-i) :Initialization
-coulomb (-r) :Coulomb potential

Response Functions:
-optics (-o) <string> :Linear Response optical properties (more with -h optics)
-X (-d) <string> :Inverse Dielectric Matrix (more with -h X)
-dipoles (-q) :Oscillator strenghts (or dipoles)
-kernel (-k) <string> :Kernel (more with -h kernel)

Self-Energy:
-hf (-x) :Hartree-Fock
-gw0 (-p) <string> :GW approximation (more with -h gw0)
-dyson (-g) <string> :Dyson Equation solver (more with -h dyson)
-lifetimes (-l) :GoWo Quasiparticle lifetimes

Bethe-Salpeter Equation:
-Ksolver (-y) <string> :BSE solver (more with -h Ksolver)

Total Energy:
-acfdt :ACFDT Total Energy

Utilites:
-Quiet (-Q) :Quiet input file creation
-fatlog :Verbose (fatter) log(s)
-DBlist (-D) :Databases properties
-walltime <int> :Walltime (more with -h walltime)

YAMBO developers group (http://www.yambo-code.org)
In my case it seems that the yambo executable was compiled instead of yambo_nl, but still called yambo_nl.
I have already tried to compile different yambo versions and with different compilers but I always get the executable where the -u option is missing.

Do you have an idea what the problem could be? I am glad about any help I can get.

Best regards
Mike

Re: yambo_nl -u option is missing

Posted: Thu Jan 06, 2022 4:00 pm
by claudio
Dear Mike

I download the last GPL from github

https://github.com/yambo-code/yambo

and I compiled it with

make core

make nl-project

and then run yambo_nl -h

in this case I obtain the -u input flag without problems
please try the last GPL version and let us know

Claudio

Re: yambo_nl -u option is missing

Posted: Thu Jan 06, 2022 7:00 pm
by Mike Pionnteck
Dear Claudio

Thank you for your answer.

I tried the last GPL and the result was the same as before. I compile it on Hawk of HLRS. Before we already compiled yambo_nl on different HPCs and it worked. Therefore, could it be a HPC specific problem?

I also tried to use an input generated by a yambo_nl executable from another HPC and tried to apply nloptics using
yambo_nl -F yambo.in
with the yambo_nl version I am now trying to compile on Hawk. However, the executable didn't run nloptics and the log file was called r_setup. Therefore, it seems even more that yambo is compiled instead of yambo_nl but the executable is called yambo_nl which I don't understand.

Best regards
Mike

Re: yambo_nl -u option is missing

Posted: Tue Jan 11, 2022 10:39 am
by Mike Pionnteck
Dear Claudio

the problem seems to be solved. I configured on my local machine and ran make download-all instead of running the bash script to download the external libraries. I uploaded this on the HPC, compiled and it works fine. Therefore, it seems that the way of downloading the external libraries caused this error.

Thank you for your support!

Best regards
Mike

Re: yambo_nl -u option is missing

Posted: Tue Jan 11, 2022 9:49 pm
by claudio
Perfect!

best
Claudio