Page 2 of 2

Re: Slepc compilation error in yambo 5.1

Posted: Mon Apr 18, 2022 2:13 pm
by sitangshu
Hi !

Any update on this?

Regards,
Sitangshu

Re: Slepc compilation error in yambo 5.1

Posted: Tue Apr 19, 2022 3:09 pm
by Nicola Spallanzani
Dear all,
sorry I have not forgotten the problem.
Initially I thought it was just a problem with the version of Intel compiler used, because it didn't happen to me with the latest Intel-oneAPI.
Now I reproduced the problem also with Intel-oneAPI but in a different machine. So, I'm still investigating why in some cases it works.

Best,
Nicola

Re: Slepc compilation error in yambo 5.1

Posted: Thu Apr 28, 2022 9:45 pm
by sitangshu
Hi Nicola!

Any luck?

Regards

Re: Slepc compilation error in yambo 5.1

Posted: Tue May 17, 2022 4:20 pm
by Nicola Spallanzani
Dear Sitangshu,
I'm not able to solve the problem of the slepc compiler with Intel compiler.
So, if you really need the slepc for your calculations I suggest you to switch to the GCC compiler and OpenMPI. You can still benefit of the MKL library in that way:

Code: Select all

export CC=gcc
export FC=gfortran
export MPIFC=mpif90
export MPIF77=mpif77
export MPICC=mpicc

MKL_LIBS="-L${MKLROOT}/lib/intel64 -Wl,--no-as-needed -lmkl_gf_lp64 -lmkl_gnu_thread -lmkl_core -lgomp -lpthread -lm -ldl"

./configure --enable-open-mp --enable-mpi \
	    --enable-time-profile --enable-memory-profile --enable-msgs-comps \
	    --enable-slepc-linalg \
	    --with-blas-libs="${MKL_LIBS}" --with-lapack-libs="${MKL_LIBS}" \
	    --with-fft-includedir="${MKLROOT}/include" --with-fft-libs="${MKL_LIBS}" 

make -j4 core
Best regards,
Nicola

Re: Slepc compilation error in yambo 5.1

Posted: Mon May 23, 2022 6:10 am
by sitangshu
Thanks Nicola,

I am now able to generate all the binaries.

Regards
Sitangshu

Re: Slepc compilation error in yambo 5.1

Posted: Fri Oct 14, 2022 2:10 pm
by jasonhan0710
Dear Nicola,

I have met the same problem when compile the slepc library for either Intel oneapi or gnu compiler. Do you have any idea how to deal with it?

Best,
Jason

Re: Slepc compilation error in yambo 5.1

Posted: Sun Oct 16, 2022 12:12 pm
by jasonhan0710
Dear all,

I have solved the problem by updating the version of PETSC and SLEPC to 3.18.0. Hope this message will be helpful when facing the same problem.

Best,
Jason

Re: Slepc compilation error in yambo 5.1

Posted: Mon Oct 17, 2022 4:13 pm
by Nicola Spallanzani
Dear all,
Jason is right, using the latest versions of petsc end slepc solve the problem.
Here how to do it using the yambo procedure:

1) download the latest version of petsc and slepc
wget https://ftp.mcs.anl.gov/pub/petsc/relea ... 8.0.tar.gz
wget https://slepc.upv.es/download/distrib/s ... 8.0.tar.gz

2) move the two tarballs into the directory lib/archive
mv *3.18.0.tar.gz lib/archive/.

3) edit the file lib/archive/package.list and change these two lines:
pkgname_petsc=petsc-3.18.0
pkgname_slepc=slepc-3.18.0

4) make clean

5) configure and compile again:

Code: Select all

export FC=ifort 
export F77=ifort
export CPP="icc -E -ansi"
export CC=icc 
export FPP="fpp -free -P"
export F90SUFFIX=".f90"
export MPIFC=mpiifort
export MPIF77=mpiifort
export MPICC=mpiicc
export MPICXX=mpiicpc

./configure \
    --enable-open-mp --enable-mpi --enable-slepc-linalg --enable-hdf5-par-io \
    --enable-msgs-comps --enable-time-profile --enable-memory-profile \
    --with-blas-libs="-L${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl" \
    --with-lapack-libs="-L${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl" \
    --with-scalapack-libs="-L${MKLROOT}/lib/intel64 -lmkl_scalapack_lp64" \
    --with-blacs-libs="-L${MKLROOT}/lib/intel64 -lmkl_blacs_intelmpi_lp64" \
    --with-fft-includedir="${MKLROOT}/include" \
    --with-fft-libs="-L${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl" \
    --with-extlibs-path=${HOME}/opt/yambo-ext-libs

make -j4 core 
If you were using the configure option --with-extlibs-path delete the old version of petsc that is not compatible with the newer version of slepc.

Best,
Nicola