Error in VASP 6.4.0 compilation

Questions regarding the compilation of VASP on various platforms: hardware, compilers and libraries, etc.

Moderators: Global Moderator, Moderator

Post Reply
Message
Author
abdul_jaleel1
Newbie
Newbie
Posts: 26
Joined: Wed Mar 11, 2020 12:30 pm
License Nr.: 20-0027
Location: Pakistan

Error in VASP 6.4.0 compilation

#1 Post by abdul_jaleel1 » Wed Aug 16, 2023 1:33 pm

Hi

I am building VASP 6.4.0 on Redhat with purely intel-based build using intel oneAPI. I have used intel oneAPI Basekit and oneAPI Hpckit for intel compilers, and intel onAPI MKL libraries and MPI.

I used makefile.include.intel for build. The commands 'make std' and 'make all' were executed without giving any error.
To confirm the successful build, I ran the testsuite by

[arif@localhost testsuite]$ make test_all

Several tests failed during the run. I need assistance to identify the reason behind their failure and to resolve the errors. The testsuite.log file is attached which indicates the failure of several tests.

SUMMARY:
==================================================================
The following tests failed, please check the output file manually:
bulk_BN_PBE_Libxc bulk_BN_SCAN_Libxc bulk_SiO2_LOPTICS bulk_SiO2_LOPTICS_nosym bulk_SiO2_LOPTICS_RPR bulk_SiO2_LPEAD bulk_SiO2_LPEAD_nosym bulk_SiO2_LPEAD_RPR Co_2E4W_T Co_CRPAR_proj Co_CRPA_proj Co_CRPA_proj_RPR Co_CRPA_weighted Co_CRPA_weighted_RPR C_2x2x2_CORE_CON C_2x2x2_CORE_CON_RPR C_2x2x2_RPAFORCE FeAl_CRPAR_T mlwf_lif_scdm mlwf_lif_scdm_optics mlwf_mos2_wannier90 mlwf_si_scdm ML_FeCrNi_ISTART3 ML_PbICs_ISTART3 ML_Phosphene_ISTART1 ML_RhCO_ISTART3 ML_ZrO_ISTART3 NiO_2E4W SiC8_ACFDT SiC8_ACFDTR SiC8_ACFDTRK SiC8_ACFDTR_SCK SiC8_G0W0R SiC8_G0W0RK SiC8_GW0R SiC8_GW0RK SiC8_QPGW0R SrVO3_CRPA_band_removal SrVO3_CRPA_band_removal_RPR SrVO3_CRPA_proj SrVO3_CRPA_proj_RPR SrVO3_CRPA_weighted SrVO3_CRPA_weighted_RPR SrVO3_NLRPA SrVO3_NLRPA_RPR


Thanks.
You do not have the required permissions to view the files attached to this post.

manuel_engel1
Global Moderator
Global Moderator
Posts: 65
Joined: Mon May 08, 2023 4:08 pm

Re: Error in VASP 6.4.0 compilation

#2 Post by manuel_engel1 » Wed Aug 16, 2023 2:52 pm

Hi,

Some failures are due to the code not being compiled with the VASP2Wannier90 interface. To enable this functionality, uncomment the final three lines of your makefile.include and provide the path to the wannier90 code.

The remaining failures are tricky. The backtrace in the log file is not particularly helpful. However, the error hints at an issue with the MPI library. Have you tried rerunning the tests? Do you get the same outcome? Can you switch MPI library and see if the problem persists?
Manuel
VASP developer

abdul_jaleel1
Newbie
Newbie
Posts: 26
Joined: Wed Mar 11, 2020 12:30 pm
License Nr.: 20-0027
Location: Pakistan

Re: Error in VASP 6.4.0 compilation

#3 Post by abdul_jaleel1 » Fri Aug 18, 2023 6:36 am

Hi

Thanks for the response.

As suggested, I have installed wannier90 and switched mpi to OpenMPI.
[arif@localhost 2021.10.0]$ module avail

--------------------------------------------------- /usr/share/Modules/modulefiles ----------------------------------------------------
dot module-git module-info modules null use.own

---------------------------------------------------------- /etc/modulefiles -----------------------------------------------------------
mpi/mpich-3.2-x86_64 mpi/openmpi-x86_64
[arif@localhost 2021.10.0]$ module load mpi/openmpi-x86_64

I used makefile.include.intel_omp. Then I built vasp using 'make all'. It was successful.
But testing the build using 'make test', again resulted in many failures. The testsuite.log file is attached.

==================================================================
SUMMARY:
==================================================================
The following tests failed, please check the output file manually:
andersen_nve andersen_nve_constrain_fixed andersen_nve_constrain_fixed_RPR andersen_nve_RPR andersen_nvt andersen_nvt_fixed andersen_nvt_RPR bulk_GaAs_ACFDT bulk_GaAs_ACFDT_RPR bulk_GaAs_G0W0_sym bulk_GaAs_G0W0_sym_RPR bulk_GaAs_scGW0_ALGO=D_sym bulk_GaAs_scGW0_ALGO=D_sym_RPR bulk_GaAs_scGW0_sym bulk_GaAs_scGW0_sym_RPR bulk_GaAs_scGW_ALGO=D_sym bulk_GaAs_scGW_ALGO=D_sym_RPR bulk_GaAs_scGW_sym bulk_GaAs_scGW_sym_RPR bulk_InP_SOC_DFT_ISYM=2 bulk_InP_SOC_DFT_ISYM=2_RPR bulk_InP_SOC_DFT_ISYM=3 bulk_InP_SOC_DFT_ISYM=3_RPR bulk_InP_SOC_G0W0_sym bulk_InP_SOC_G0W0_sym_RPR bulk_InP_SOC_PBE0_nosym bulk_InP_SOC_PBE0_sym bulk_InP_SOC_PBE0_sym_RPR bulk_SiO2_elastic_properties_ibrion6 bulk_SiO2_elastic_properties_ibrion6_RPR bulk_SiO2_elastic_properties_ibrion8 bulk_SiO2_elastic_properties_ibrion8_RPR bulk_SiO2_HSE bulk_SiO2_HSE_RPR bulk_SiO2_LOPTICS bulk_SiO2_LOPTICS_RPR bulk_SiO2_LPEAD bulk_SiO2_LPEAD_RPR bulk_SiO2_PBE0 bulk_SiO2_PBE0_RPR CrS CrS_RPR GaAs_LEPSILON GaAs_LEPSILON_LPEAD GaAs_LEPSILON_LPEAD_RPR GaAs_LEPSILON_RPR HEG_333_LW md_8_Cu_IALGO=38 md_8_Cu_IALGO=38_RPR md_8_Cu_IALGO=48 md_8_Cu_IALGO=48_RPR NiOLDAU=1 NiOLDAU=1_RPR NiOLDAU=2 NiOLDAU=2_RPR NiOsLDAU=2_x NiOsLDAU=2_x_RPR NiOsLDAU=2_y NiOsLDAU=2_y_RPR NiOsLDAU=2_z NiOsLDAU=2_z_RPR SiC8_GW0R SiC_ACFDTR_T SiC_HSE06_ALGO=A SiC_HSE06_ALGO=A_RPR SiC_HSE06_ALGO=D SiC_HSE06_ALGO=D_RPR SiC_phon SiC_phon_RPR Tl_x Tl_x_RPR Tl_y Tl_y_RPR Tl_z Tl_z_RPR
You do not have the required permissions to view the files attached to this post.

manuel_engel1
Global Moderator
Global Moderator
Posts: 65
Joined: Mon May 08, 2023 4:08 pm

Re: Error in VASP 6.4.0 compilation

#4 Post by manuel_engel1 » Fri Aug 18, 2023 8:21 am

Unfortunately, the makefile.include.intel_omp builds the OpenMP-enabled version of VASP using the Intel tool chain. This includes the Intel MPI library. You can confirm this by looking at the compiler name specified in the makefile.include:

Code: Select all

FC          = mpiifort -qopenmp
FCL         = mpiifort
Since the Intel MPI library is not available when running the tests, all the tests fail due to missing symbols.

To use the OpenMPI library instead, I suggest that you try again using the makefile.include.intel_ompi_mkl_omp or similar if available. This should work with the module you listed in your last post.
Manuel
VASP developer

abdul_jaleel1
Newbie
Newbie
Posts: 26
Joined: Wed Mar 11, 2020 12:30 pm
License Nr.: 20-0027
Location: Pakistan

Re: Error in VASP 6.4.0 compilation

#5 Post by abdul_jaleel1 » Fri Aug 18, 2023 9:10 am

Hi

Using makefile.include.intel_ompi_mkl_omp results in errors in 'make all' during vasp compilation

[arif@localhost arch]$ cp makefile.include.intel_ompi_mkl_omp ../makefile.include
[arif@localhost arch]$ cd ..
[arif@localhost vasp.6.4.0]$ vi makefile.include
[arif@localhost vasp.6.4.0]$ make all
if [ ! -d build/std ] ; then mkdir -p build/std ; fi
cp src/makefile src/.objects src/makedeps.awk makefile.include build/std
make -C build/std VERSION=std check
make[1]: Entering directory `/home/arif/Downloads/vasp.6.4.0/build/std'
exit 0
make[1]: Leaving directory `/home/arif/Downloads/vasp.6.4.0/build/std'
make -C build/std VERSION=std cleandependencies -j1
make[1]: Entering directory `/home/arif/Downloads/vasp.6.4.0/build/std'
rm -f .depend
make[1]: Leaving directory `/home/arif/Downloads/vasp.6.4.0/build/std'
make -C build/std VERSION=std all
make[1]: Entering directory `/home/arif/Downloads/vasp.6.4.0/build/std'
rsync -ru ../../src/lib .
cp makefile.include lib
make -C lib -j1
make[2]: Entering directory `/home/arif/Downloads/vasp.6.4.0/build/std/lib'
make libdmy.a
make[3]: Entering directory `/home/arif/Downloads/vasp.6.4.0/build/std/lib'
make[3]: `libdmy.a' is up to date.
make[3]: Leaving directory `/home/arif/Downloads/vasp.6.4.0/build/std/lib'
make[2]: Leaving directory `/home/arif/Downloads/vasp.6.4.0/build/std/lib'
rsync -ru ../../src/parser .
cp makefile.include parser
make -C parser -j1
make[2]: Entering directory `/home/arif/Downloads/vasp.6.4.0/build/std/parser'
make libparser.a
make[3]: Entering directory `/home/arif/Downloads/vasp.6.4.0/build/std/parser'
make[3]: `libparser.a' is up to date.
make[3]: Leaving directory `/home/arif/Downloads/vasp.6.4.0/build/std/parser'
make[2]: Leaving directory `/home/arif/Downloads/vasp.6.4.0/build/std/parser'
rsync -u ../../src/*.F ../../src/*.inc .
make build_info
make[2]: Entering directory `/home/arif/Downloads/vasp.6.4.0/build/std'
printf " character(len=*), parameter :: cpp_options = '&\n&-DHOST=\"LinuxIFC\" &\n&-DMPI &\n&-DMPI_BLOCK=8000 &\n&-Duse_collective &\n&-DscaLAPACK &\n&-DCACHE_SIZE=4000 &\n&-Davoidalloc &\n&-Dvasp6 &\n&-Duse_bse_te &\n&-Dtbdyn &\n&-Dfock_dblbuf &\n&-D_OPENMP &\n&-DVASP2WANNIER90'\n" > build_info.inc
printf " character(len=*), parameter :: link_line = '&\n&mpif90 &\n&-qmkl &\n&-Llib &\n&-ldmy &\n&-Lparser &\n&-lparser &\n&-lstdc++ &\n&-L/home/arif/wannier90-3.1.0/lib &\n&-lwannier'\n" >> build_info.inc
printf " character(len=*), parameter :: fc = '&\n&mpif90 &\n&-qopenmp'\n" >> build_info.inc
printf " character(len=*), parameter :: fcl = '&\n&mpif90 &\n&-qmkl'\n" >> build_info.inc
printf " character(len=*), parameter :: fflags = '&\n&-assume &\n&byterecl &\n&-w &\n&-xHOST'\n" >> build_info.inc
printf " character(len=*), parameter :: llibs = '&\n&-lstdc++ &\n&-L/home/arif/wannier90-3.1.0/lib &\n&-lwannier'\n" >> build_info.inc
printf " character(len=*), parameter :: incs = '&\n&-I/opt/intel/oneapi/mkl/2023.2.0:/opt/intel/oneapi/mkl/2023.2.0/include/fftw'\n" >> build_info.inc
make[2]: Leaving directory `/home/arif/Downloads/vasp.6.4.0/build/std'
rm -f vasp ; make vasp ; cp vasp ../../bin/vasp_std
make[2]: Entering directory `/home/arif/Downloads/vasp.6.4.0/build/std'
mpif90 -qmkl -o vasp c2f_interface.o nccl2for.o simd.o base.o profiling.o string.o tutor.o version.o build_info.o command_line.o vhdf5_base.o incar_reader.o reader_base.o openmp.o openacc_struct.o mpi.o mpi_shmem.o mathtools.o bse_struct.o hamil_struct.o radial_struct.o pseudo_struct.o mgrid_struct.o wave_struct.o nl_struct.o mkpoints_struct.o poscar_struct.o afqmc_struct.o fock_glb.o chi_glb.o smart_allocate.o xml.o extpot_glb.o constant.o ml_ff_c2f_interface.o ml_ff_prec.o ml_ff_string.o ml_ff_tutor.o ml_ff_constant.o ml_ff_mpi_help.o ml_ff_neighbor.o ml_ff_taglist.o ml_ff_struct.o ml_ff_mpi_shmem.o vdwforcefield_glb.o jacobi.o main_mpi.o openacc.o scala.o asa.o lattice.o poscar.o ini.o mgrid.o ml_asa2.o ml_ff_mpi.o ml_ff_helper.o ml_ff_logfile.o ml_ff_math.o ml_ff_iohandle.o ml_ff_memory.o ml_ff_abinitio.o ml_ff_ff2.o ml_ff_ff.o ml_ff_mlff.o setex_struct.o xclib.o vdw_nl.o xclib_grad.o setex.o radial.o pseudo.o gridq.o ebs.o symlib.o mkpoints.o random.o wave.o wave_mpi.o wave_high.o bext.o spinsym.o symmetry.o lattlib.o nonl.o nonlr.o nonl_high.o dfast.o choleski2.o mix.o hamil.o xcgrad.o xcspin.o potex1.o potex2.o constrmag.o cl_shift.o relativistic.o LDApU.o paw_base.o metagga.o egrad.o pawsym.o pawfock.o pawlhf.o diis.o rhfatm.o hyperfine.o fock_ace.o paw.o mkpoints_full.o charge.o Lebedev-Laikov.o stockholder.o dipol.o solvation.o scpc.o pot.o fermi_energy.o tet.o dos.o elf.o hamil_rot.o chain.o dyna.o fileio.o vhdf5.o sphpro.o us.o core_rel.o aedens.o wavpre.o wavpre_noio.o broyden.o dynbr.o reader.o writer.o xml_writer.o brent.o stufak.o opergrid.o stepver.o fast_aug.o fock_multipole.o fock.o fock_dbl.o fock_frc.o mkpoints_change.o subrot_cluster.o sym_grad.o mymath.o npt_dynamics.o subdftd3.o subdftd4.o internals.o dynconstr.o dimer_heyden.o dvvtrajectory.o vdwforcefield.o nmr.o pead.o k-proj.o subrot.o subrot_scf.o paircorrection.o rpa_force.o ml_reader.o ml_interface.o force.o pwlhf.o gw_model.o optreal.o steep.o rmm-diis.o davidson.o david_inner.o root_find.o lcao_bare.o locproj.o electron_common.o electron.o rot.o electron_all.o shm.o pardens.o optics.o constr_cell_relax.o stm.o finite_diff.o elpol.o hamil_lr.o rmm-diis_lr.o subrot_lr.o lr_helper.o hamil_lrf.o elinear_response.o ilinear_response.o linear_optics.o setlocalpp.o wannier.o electron_OEP.o electron_lhf.o twoelectron4o.o gauss_quad.o m_unirnk.o minimax_ini.o minimax_dependence.o minimax_functions1D.o minimax_functions2D.o minimax_struct.o minimax_varpro.o minimax.o umco.o mlwf.o ratpol.o pade_fit.o screened_2e.o wave_cacher.o crpa.o chi_base.o wpot.o local_field.o ump2.o ump2kpar.o fcidump.o ump2no.o bse_te.o bse.o time_propagation.o acfdt.o afqmc.o rpax.o chi.o acfdt_GG.o dmft.o GG_base.o greens_orbital.o lt_mp2.o rnd_orb_mp2.o greens_real_space.o chi_GG.o chi_super.o sydmat.o rmm-diis_mlr.o linear_response_NMR.o wannier_interpol.o wave_interpolate.o linear_response.o auger.o dmatrix.o phonon.o wannier_mats.o elphon.o core_con_mat.o embed.o extpot.o rpa_high.o fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o main.o -Llib -ldmy -Lparser -lparser -lstdc++ -L/home/arif/wannier90-3.1.0/lib -lwannier
gfortran: error: unrecognized command line option ‘-qmkl’
make[2]: *** [vasp] Error 1
make[2]: Leaving directory `/home/arif/Downloads/vasp.6.4.0/build/std'
cp: cannot stat ‘vasp’: No such file or directory
make[1]: *** [all] Error 1
make[1]: Leaving directory `/home/arif/Downloads/vasp.6.4.0/build/std'
make: *** [std] Error 2

manuel_engel1
Global Moderator
Global Moderator
Posts: 65
Joined: Mon May 08, 2023 4:08 pm

Re: Error in VASP 6.4.0 compilation

#6 Post by manuel_engel1 » Fri Aug 18, 2023 12:50 pm

This was a bit of an oversight on my part. The makefile.include.intel_ompi_mkl_omp requires more setup and will usually not work out of the box. It's probably not worth pursuing this issue by switching MPI library. Sorry for the confusion.

Instead, I would like to return to the original issue with the Intel oneAPI toolchain. Can you report the exact version numbers for the intel compiler, the MPI library and the MKL version? For reference, we have run and tested VASP on our local cluster with the following:
  • intel-oneapi-compilers-2022.0.1
  • intel-oneapi-mpi-2021.5.0
  • intel-oneapi-mkl-2022.0.1
There are few more questions that may help illuminate the problem.
  • Are you running on the same machine that you compile on?
  • If not, is the architecture the same?
  • How many cores/nodes are you using when running the tests?
  • Are you running on one node or on multiple nodes?
  • Does your cluster use Infiniband?
In addition, could you try running only the "fast" tests (make test instead of make test_all) and see if they run without problems? I would still ask you to rerun the original tests and see if the same tests fail again. If different tests fail, this could indicate an issue with the system or hardware.

One common source of failure that comes to mind is a limited stack size. To provide an unlimited amount of stack memory to your applications, you can issue the command (e.g. in .bashrc or similar):

Code: Select all

ulimit -s unlimited
Manuel
VASP developer

abdul_jaleel1
Newbie
Newbie
Posts: 26
Joined: Wed Mar 11, 2020 12:30 pm
License Nr.: 20-0027
Location: Pakistan

Re: Error in VASP 6.4.0 compilation

#7 Post by abdul_jaleel1 » Fri Aug 18, 2023 4:59 pm

I am using the latest versions of intel oneAPI compilers, mkl and mpi.

Compilers = 2023.2.1
MKL = 2023.2.0
MPI = 2021.10.0

I am accessing Server through SSH for VASP compilation. CPU architecture is the same for both.

[arif@localhost ~]$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 12
On-line CPU(s) list: 0-11
Thread(s) per core: 2
Core(s) per socket: 6
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 158
Model name: Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz
Stepping: 10
CPU MHz: 809.179
CPU max MHz: 4600.0000
CPU min MHz: 800.0000
BogoMIPS: 6384.00
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 12288K
NUMA node0 CPU(s): 0-11
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch epb invpcid_single ssbd rsb_ctxsw ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear spec_ctrl intel_stibp flush_l1d arch_capabilities

I am running tests on 1 node.

I build the vasp now using makefile.include.intel_omp and tested the build using 'make test' and I got


==================================================================
SUCCESS: ALL SELECTED TESTS PASSED
==================================================================
You do not have the required permissions to view the files attached to this post.

manuel_engel1
Global Moderator
Global Moderator
Posts: 65
Joined: Mon May 08, 2023 4:08 pm

Re: Error in VASP 6.4.0 compilation

#8 Post by manuel_engel1 » Mon Aug 21, 2023 7:34 am

That looks good. There should be no problem in that environment. And indeed, all the fast tests succeed. Do you still encounter problems compiling or running VASP?
Manuel
VASP developer

Post Reply