Closed heatherkellyucl closed 3 months ago
Since the build script already exists, would I just be "releasing the compiled software" from "https://github.com/UCL-ARC/hpc-support/wiki/Research-Software-Build-Scripts#releasing-the-compiled-software" ?
You would start by making a new version of the build script called yambo-5.2_install
that is updated for Yambo 5.2, and with the compiler changes if we decide we need to do those.
package_version="5.0.1"
needs updating, and possibly this part:
_env_setup() {
module purge
require gcc-libs
require compilers/intel/2017/update4
require mpi/intel/2017/update3/intel
Requestor wants to use it with abinit so we probably need compilers/intel/2018/update3
and mpi/intel/2018/update3/intel
to match the existing abinit module (note, some bad MKL bugs with Intel 2018, it might be ok if they don't hit the bugs - but they'll need to test if they get reasonable physical results).
Changed some of the required compilers: • compilers/intel/2018/update3 • mpi/intel/2018/update3/intel
and changed the package version to 5.2.0. Changed some of the config flags to --enable-netcdf-output and removed --enable-etsf-io.
This version I was able to successfully install from my local repo to my own area. Pushed, then pulled as ccspapp, when I tried to run the install as ccspapp there was an error:
mkdir: cannot create directory '/shared/ucl/apps/yambo/5.2.0/intel-2018/bin': No such file or directory
make[2]: *** [exe] Error 1
make[1]: *** [yambo] Error 1
yambo build failed
Tested with moving mkdir -p "$install_prefix"
to the start of the build section, and removed cp -r bin doc "$install_prefix"/
, new errors:
a2y linking failed. Check log/compile_a2y.log make[1]: *** [a2y] Error 1 a2y build failed
Tried to run the install script in the shared folders area (version before moving mkdir -p "$install_prefix"
and removing cp -r bin doc "$install_prefix"/
) into home area (as myself, not ccspapp) and that worked.
Log files for a recent install failure where a2y linking failed. compile_a2y-log.txt config-report.txt config-setup.txt
I have built ABINIT 9.10.3 on Kathleen with the Intel 2022 compilers and MPI in case this helps with the Yambo build.
The modules needed for this version of ABINIT are:
module -f unload compilers mpi gcc-libs
module load beta-modules
module load gcc-libs/10.2.0
module load compilers/intel/2022.2
module load mpi/intel/2019/update6/intel
module load fftw/3.3.10-impi/intel-2022
module load hdf/5-1.12.3-impi/intel-2022
module load netcdf/4.9.2/intel-2022
module load netcdf-fortran/4.6.1/intel-2022
module load libxc/6.2.2/intel-2022
module load python3/recommended
module load abinit/9.10.3/intel-2022
The newer log/compile_a2y.log: compile_a2y-log4.txt config-setup4.txt config-report4.txt
Something netcdf is wrong:
/tmp/yambo-build.99T9xiPgbo/yambo-5.2.0/lib/libcommunicate.a(com_utilities_netcdf.o): In function `of_netcdf_shadow_real_':
/tmp/yambo-build.99T9xiPgbo/yambo-5.2.0/src/communicate/com_utilities_netcdf.f90:84: undefined reference to `def_variable_bulk_'
/tmp/yambo-build.99T9xiPgbo/yambo-5.2.0/src/communicate/com_utilities_netcdf.f90:85: undefined reference to `def_variable_bulk_'
/tmp/yambo-build.99T9xiPgbo/yambo-5.2.0/src/communicate/com_utilities_netcdf.f90:91: undefined reference to `io_variable_bulk_'
[ccaedrc@login02 log]$
/tmp/yambo-build.99T9xiPgbo/yambo-5.2.0/lib/libcommunicate.a(com_utilities_netcdf.o): In function `of_netcdf_shadow_char_':
It does have an Spack recipe at https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/yambo/package.py (but only for 5.1.1 which might not help).
They are passing in
"--enable-netcdf-hdf5",
"--enable-hdf5-compression",
"--with-hdf5-libs=
"--with-netcdf-path=
"--with-netcdff-path=
I have passed in:
module purge
require beta-modules
require gcc-libs/10.2.0
require compilers/intel/2022.2
require mpi/intel/2019/update6/intel
require libxc/6.2.2/intel-2022
require hdf/5-1.12.3-impi/intel-2022
require netcdf/4.9.2/intel-2022
require netcdf-fortran/4.6.1/intel-2022
and
--with-fft-libs=-mkl \
--with-blas-libs=-mkl \
--with-lapack-libs=-mkl \
--enable-netcdf-output \
--enable-hdf5-par-io \
--with-libxc-path="/shared/ucl/apps/libxc/6.2.2/intel-2022/" \
--with-hdf5-path="/shared/ucl/apps/HDF/5-1.12.3/impi/intel-2022/" \
--with-netcdf-path="/shared/ucl/apps/NetCDF/4.9.2-intel-2022/" \
--with-netcdff-path="/shared/ucl/apps/NetCDF-fortran/4.6.1-intel-2022/" \
I'm trying a build in my ~/Scratch/Software/Yambo/build directory using a slightly modified local copy of the build script logging all the output from the build process.
I have been able to install yambo-5.1.1 using a personal install of Spack.
Hi, was this installation finished? There is a ticket asking for it and I don't see it available in the clusters. Many thanks
Status: our buildscript was still giving us an error at:
mpiifort -assume bscc -O3 -g -ip -nofor-main -I/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/include -I/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/include/headers/common -I/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/include/headers/parser -I/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/lib/yambo/Ydriver/include -I/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/include/driver -I/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/include/version -I/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/lib/external/intel/mpiifort/include/ -I/shared/ucl/apps/NetCDF-fortran/4.6.1-intel-2022//include -I/shared/ucl/apps/NetCDF/4.9.2-intel-2022//include -I/shared/ucl/apps/HDF/5-1.12.3/impi/intel-2022//include -I/shared/ucl/apps/libxc/6.2.2/intel-2022//include -I/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/lib/yambo/Ydriver/include -I/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/include/driver -I/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/include/version -o a2y driver.o netcdf_data.o a2y.o a2y_db1.o a2y_wf.o a2y_kb_pp.o -L/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/lib -lint_modules -lbz_ops -lstop_and_restart -linterface -lsetup -lio_parallel -lio -lYio -ltiming -lcommon -loutput -lparser -lparallel -llinear_algebra -lmatrices -lmodules -lcommunicate -lallocations -lmemory -ltools -la2y_Ydriver_main -la2y_Ydriver_interface -la2y_Ydriver_options -ldriver -lqe_pseudo -lmath77 -lslatec -llocal -mkl -mkl /tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/lib/external/intel/mpiifort/lib/libiotk.a -L/shared/ucl/apps/NetCDF-fortran/4.6.1-intel-2022//lib -lnetcdff -L/shared/ucl/apps/NetCDF/4.9.2-intel-2022//lib -lnetcdf -L/shared/ucl/apps/HDF/5-1.12.3/impi/intel-2022//lib -lhdf5hl_fortran -lhdf5_fortran -lhdf5_hl -lhdf5 -L/shared/ucl/apps/libxc/6.2.2/intel-2022//lib -lxcf90 -lxcf03 -lxc -mkl -lm
ifort: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
ifort: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
ifort: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/lib/libcommunicate.a(com_utilities_netcdf.o): In function `of_netcdf_shadow_real_':
/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/src/communicate/com_utilities_netcdf.f90:84: undefined reference to `def_variable_bulk_'
/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/src/communicate/com_utilities_netcdf.f90:85: undefined reference to `def_variable_bulk_'
/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/src/communicate/com_utilities_netcdf.f90:91: undefined reference to `io_variable_bulk_'
/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/src/communicate/com_utilities_netcdf.f90:92: undefined reference to `io_variable_bulk_'
/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/lib/libcommunicate.a(com_utilities_netcdf.o): In function `of_netcdf_shadow_char_':
/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/src/communicate/com_utilities_netcdf.f90:163: undefined reference to `def_variable_bulk_'
/tmp/yambo-build.yDKXYTLnBN/yambo-5.2.0/src/communicate/com_utilities_netcdf.f90:174: undefined reference to `io_variable_bulk_'
Spack worked to build 5.1.1, doesn't currently have 5.2.
Yambo 5.2.3 was installed in the clusters, except Michael for the moment. The build worked with --enable-netcdf-classic \ or --enable-netcdf-v3. I asked the user to test if the installed version meets their requirements.
User reported Yambo 5.2.3 is working well. Ticket was closed
IN:06340800
Should be a straightforward update from https://github.com/UCL-RITS/rcps-buildscripts/blob/b15e1baae012675284718457359fcb3a53cf9926/yambo-5.0.1_install
One question: should we update the compiler and MPI from Intel 2017 to
compilers/intel/2022.2
andmpi/intel/2021.6.0/intel
or stick with the current?https://github.com/yambo-code/yambo/ https://www.yambo-code.eu/wiki/index.php?title=Installation - don't appear to be any relevant known issues either way.