Spack install abinit

Hello ABINITers,

I try to install ABINIT on a HPC using the SPACK package manager. As I already read on the ABINIT-website, only v8 is supported, so i tried to install ABINIT using:

spack install abinit@8.10.3

It seems to successfully install ABINIT, but when I run a test e.g. tpositron_x.files using

srun abinit -i tpositron_x.files >& log or mpirun abinit -i tpositron_x.files >& log

i get some error.

I hope you can support me.
Best regards,
Gratuit

Further information:

USER-SPACK v0.18.1

spack find -vd abinit

==> 1 installed package
-- linux-rocky8-icelake / gcc@8.5.0 -----------------------------
abinit@8.10.3~install-tests~libxml2+mpi~openmp~scalapack~wannier90 optimization-flavor=standard patches=2d6f332
    atompaw@4.2.0.0 patches=152deb6
        intel-oneapi-mkl@2022.1.0~cluster~ilp64+shared
            intel-oneapi-tbb@2021.6.0
        libxc@2.2.2~cuda+shared
            perl@5.34.1+cpanm+shared+threads
                berkeley-db@18.1.40+cxx~docs+stl patches=b231fcc
                bzip2@1.0.8~debug~pic+shared
                    diffutils@3.8
                        libiconv@1.16 libs=shared,static
                gdbm@1.19
                    readline@8.1
                        ncurses@6.2~symlinks+termlib abi=none
                            pkgconf@1.8.0
                zlib@1.2.12+optimize+pic+shared patches=0d38234
    hdf5@1.10.8~cxx+fortran+hl~ipo~java+mpi+shared~szip~threadsafe+tools api=default build_type=RelWithDebInfo patches=ee351eb
        cmake@3.23.1~doc+ncurses~ownlibs~qt build_type=Release
            curl@7.83.0~gssapi~ldap~libidn2~librtmp~libssh~libssh2~nghttp2 libs=shared,static tls=gnutls
                gnutls@3.6.15~guile+zlib
                    gettext@0.21+bzip2+curses+git~libunistring+libxml2+tar+xz
                        libxml2@2.9.13~python
                            xz@5.2.5~pic libs=shared,static
                        tar@1.34 zip=pigz
                            pigz@2.7
                            zstd@1.5.2+programs compression=none libs=shared,static
                    libidn2@2.3.0
                        libunistring@0.9.10
                    nettle@3.4.1
                        gmp@6.2.1 libs=shared,static
                            autoconf@2.69 patches=35c4492,7793209,a49dd5b
                                m4@1.4.19+sigsegv patches=9dc5fbd,bfdffa7
                                    libsigsegv@2.13
                            automake@1.16.5
                            libtool@2.4.7
            expat@2.4.8+libbsd
                libbsd@0.11.5
                    libmd@1.0.4
            libarchive@3.5.2+iconv compression=bz2lib,lz4,lzma,lzo2,zlib,zstd crypto=mbedtls libs=shared,static programs=none xar=expat
                lz4@1.9.3 libs=shared,static
                lzo@2.10 libs=shared,static
                mbedtls@2.28.0+pic build_type=Release libs=static
            libuv@1.44.1
            rhash@1.4.2 patches=093518c,3fbfe46
        intel-oneapi-mpi@2021.6.0~external-libfabric~ilp64
    netcdf-c@4.8.1~dap~fsync~hdf4~jna+mpi~parallel-netcdf+pic+shared patches=de556da
    netcdf-fortran@4.5.4~doc+pic+shared

srun abinit -i tpositron_x.files >& log

slurmstepd: error: mpi/pmi2: value not properly terminated in client request
slurmstepd: error: mpi/pmi2: request not begin with 'cmd='
slurmstepd: error: mpi/pmi2: full request is: 0000000000000000000000000000000000000000000000
cmd=put kvsname=180080.0 key=bc-0-seg-2/3 value=00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
slurmstepd: error: mpi/pmi2: invalid client request
slurmstepd: error: mpi/pmi2: request not begin with 'cmd='
slurmstepd: error: mpi/pmi2: full request is: 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

slurmstepd: error: mpi/pmi2: invalid client request
srun: interrupt (one more within 1 sec to abort)
srun: StepId=180080.0 task 0: running
srun: sending Ctrl-C to StepId=180080.0
srun: forcing job termination
srun: Job step aborted: Waiting up to 32 seconds for job step to finish.
slurmstepd: error: *** STEP 180080.0 ON node0001 CANCELLED AT 2023-12-04T18:33:32 ***
srun: launch/slurm: _step_signal: Terminating StepId=180080.0

mpirun abinit -i tpositron_x.files >& log

ABINIT 8.10.3
  
  Give name for formatted input file: 
tpositron_1.in
  Give name for formatted output file:
tpositron_1.out
  Give root name for generic input files:
tpositron_1i
  Give root name for generic output files:
tpositron_1o
  Give root name for generic temporary files:
tpositron_1tmp

...

 === Build Information === 
  Version       : 8.10.3
  Build target  : x86_64_linux_gnu8.5
  Build date    : 20231204

 === Compiler Suite === 
  C compiler       : gnu8.5
  C++ compiler     : gnu8.5
  Fortran compiler : gnu8.5
  CFLAGS           :  -g -O2 -mtune=native
  CXXFLAGS         :  -g -O2 -mtune=native
  FCFLAGS          :  -g -ffree-line-length-none
  FC_LDFLAGS       : 

 === Optimizations === 
  Debug level        : basic
  Optimization level : standard
  Architecture       : intel_xeon

 === Multicore === 
  Parallel build : yes
  Parallel I/O   : auto
  openMP support : no
  GPU support    : no

 === Connectors / Fallbacks === 
  Connectors on : yes
  Fallbacks on  : yes
  DFT flavor    : libxc+atompaw
  FFT flavor    : dfti
  LINALG flavor : mkl
  MATH flavor   : none
  TIMER flavor  : abinit
  TRIO flavor   : netcdf

 === Experimental features === 
  Bindings            : @enable_bindings@
  Exports             : no
  GW double-precision : no

 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
...
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

- input  file    -> tpositron_1.in
- output file    -> tpositron_1.out
- root for input  files -> tpositron_1i
- root for output files -> tpositron_1o

-instrng: 67 lines of input have been read from file tpositron_1.in


 Please give name of formatted atomic psp file
 iofn2 : for atom type 1, psp file is ../../../Psps_for_tests/Si.LDA-PW-paw.abinit
  read the values zionpsp=  4.0 , pspcod=   7 , lmax=   1
 3  1.6014924879                     : shape_type,rshape                         

....

================================================================================
 FFT (fine) grid used in SCF cycle:

 getcut: wavevector=  0.0000  0.0000  0.0000  ngfft=  27  27  27
         ecut(hartree)=     15.000   => boxcut(ratio)=   2.05836
 average electrostatic smooth potential [Ha] , [eV]      0.000000        0.000000

 ****** Psp strength Dij in Ha (atom      1) *****
   0.47192  73.69695   0.00000  -0.00000  -0.00000  -0.00000   0.00000   0.00000
  73.69695 *********   0.00000  -0.00000  -0.00000  -0.00000   0.00000   0.00000
   0.00000   0.00000   0.13231   0.00000   0.00000  -1.06723  -0.00000  -0.00000
  -0.00000  -0.00000   0.00000   0.13231  -0.00000  -0.00000  -1.06723   0.00000
  -0.00000  -0.00000   0.00000  -0.00000   0.13231  -0.00000   0.00000  -1.06723
  -0.00000  -0.00000  -1.06723  -0.00000  -0.00000   7.64553   0.00000   0.00000
   0.00000   0.00000  -0.00000  -1.06723   0.00000   0.00000   7.64553  -0.00000
   0.00000   0.00000  -0.00000   0.00000  -1.06723   0.00000  -0.00000   7.64553
 pawio_print_ij: WARNING -
  The matrix seems to have high value(s) !
  (  3 components have a value greater than   50.0).
  It can cause instabilities during SCF convergence.
  Action: you should check your atomic dataset (psp file)
          and look for "high" projector functions...

 ****** Psp strength Dij in Ha (atom      2) *****
   0.47192  73.69684   0.00000  -0.00000  -0.00000  -0.00000   0.00000   0.00000
  73.69684 *********   0.00000  -0.00000  -0.00000  -0.00000   0.00000   0.00000
   0.00000   0.00000   0.13231  -0.00000   0.00000  -1.06723   0.00000  -0.00000
  -0.00000  -0.00000  -0.00000   0.13231   0.00000   0.00000  -1.06723  -0.00000
  -0.00000  -0.00000   0.00000   0.00000   0.13231  -0.00000  -0.00000  -1.06723
  -0.00000  -0.00000  -1.06723   0.00000  -0.00000   7.64551  -0.00000   0.00000
   0.00000   0.00000   0.00000  -1.06723  -0.00000  -0.00000   7.64551   0.00000
   0.00000   0.00000  -0.00000  -0.00000  -1.06723   0.00000   0.00000   7.64551
 pawio_print_ij: WARNING -
  The matrix seems to have high value(s) !
  (  3 components have a value greater than   50.0).
  It can cause instabilities during SCF convergence.
  Action: you should check your atomic dataset (psp file)
          and look for "high" projector functions...


 ITER STEP NUMBER     1
 vtorho : nnsclo_now=2, note that nnsclo,dbl_nnsclo,istep=0 0 1
[node0001:592662:0:592662] Caught signal 11 (Segmentation fault: address not mapped to object at address 0x13e1c4bc)
==== backtrace (tid: 592662) ====
 0  /lib64/libucs.so.0(ucs_handle_error+0x2dc) [0x14e618fe74fc]
 1  /lib64/libucs.so.0(+0x2a6dc) [0x14e618fe76dc]
 2  /lib64/libucs.so.0(+0x2a8aa) [0x14e618fe78aa]
 3  /lib64/libpthread.so.0(+0x12ce0) [0x14e61e7a3ce0]
 4  /cluster/spack/0.18.1/opt/spack/linux-rocky8-icelake/gcc-8.5.0/intel-oneapi-mkl-2022.1.0-kkcdnmtnzpsub4eh6ujchghtogl5ywr5/mkl/2022.1.0/lib/intel64/libmkl_avx512.so.2(mkl_blas_avx512_xzdotc+0x117) [0x14e609e3dcb7]
 5  /cluster/spack/0.18.1/opt/spack/linux-rocky8-icelake/gcc-8.5.0/intel-oneapi-mkl-2022.1.0-kkcdnmtnzpsub4eh6ujchghtogl5ywr5/mkl/2022.1.0/lib/intel64/libmkl_intel_lp64.so.2(zdotc+0xe8) [0x14e624a039e8]
 6  abinit() [0x10c9d70]
 7  abinit() [0x10c9f1d]
 8  abinit() [0xa56735]
 9  abinit() [0x572c35]
10  abinit() [0x55c2a1]
11  abinit() [0x52a6aa]
12  abinit() [0x51f8df]
13  abinit() [0x50c8fb]
14  abinit() [0x4242f0]
15  abinit() [0x414170]
16  abinit() [0x40bc4b]
17  abinit() [0x40864d]
18  /lib64/libc.so.6(__libc_start_main+0xf3) [0x14e61bfa5ca3]
19  abinit() [0x40868e]
=================================

Program received signal SIGSEGV: Segmentation fault - invalid memory reference.

Backtrace for this error:
#0  0x14e6259fa171 in ???
#1  0x14e6259f9313 in ???
#2  0x14e61e7a3cdf in ???
#3  0x14e609e3dcb7 in ???
#4  0x14e624a039e7 in ???
#5  0x10c9d6f in __m_cgtools_MOD_cg_zdotc
	at /scratch-local/kraatm/USER-SPACK/build/spack-stage-abinit-8.10.3-3ajpo7adcspznj2tu5fr3rxebanjtxhb/spack-src/src/44_abitools/m_cgtools.F90:728
#6  0x10c9f1c in __m_cgtools_MOD_dotprod_g
	at /scratch-local/kraatm/USER-SPACK/build/spack-stage-abinit-8.10.3-3ajpo7adcspznj2tu5fr3rxebanjtxhb/spack-src/src/44_abitools/m_cgtools.F90:1364
#7  0xa56734 in __m_cgwf_MOD_cgwf
	at /scratch-local/kraatm/USER-SPACK/build/spack-stage-abinit-8.10.3-3ajpo7adcspznj2tu5fr3rxebanjtxhb/spack-src/src/67_common/m_cgwf.F90:499
#8  0x572c34 in __m_vtowfk_MOD_vtowfk
	at /scratch-local/kraatm/USER-SPACK/build/spack-stage-abinit-8.10.3-3ajpo7adcspznj2tu5fr3rxebanjtxhb/spack-src/src/79_seqpar_mpi/m_vtowfk.F90:408
#9  0x55c2a0 in __m_vtorho_MOD_vtorho
	at /scratch-local/kraatm/USER-SPACK/build/spack-stage-abinit-8.10.3-3ajpo7adcspznj2tu5fr3rxebanjtxhb/spack-src/src/79_seqpar_mpi/m_vtorho.F90:943
#10  0x52a6a9 in __m_scfcv_core_MOD_scfcv_core
	at /scratch-local/kraatm/USER-SPACK/build/spack-stage-abinit-8.10.3-3ajpo7adcspznj2tu5fr3rxebanjtxhb/spack-src/src/94_scfcv/m_scfcv_core.F90:1536
#11  0x51f8de in scfcv_scfcv
	at /scratch-local/kraatm/USER-SPACK/build/spack-stage-abinit-8.10.3-3ajpo7adcspznj2tu5fr3rxebanjtxhb/spack-src/src/94_scfcv/m_scfcv.F90:746
#12  0x50c8fa in __m_gstate_MOD_gstate
	at /scratch-local/kraatm/USER-SPACK/build/spack-stage-abinit-8.10.3-3ajpo7adcspznj2tu5fr3rxebanjtxhb/spack-src/src/95_drive/m_gstate.F90:1331
#13  0x4242ef in __m_gstateimg_MOD_gstateimg
	at /scratch-local/kraatm/USER-SPACK/build/spack-stage-abinit-8.10.3-3ajpo7adcspznj2tu5fr3rxebanjtxhb/spack-src/src/95_drive/m_gstateimg.F90:566
#14  0x41416f in __m_driver_MOD_driver
	at /scratch-local/kraatm/USER-SPACK/build/spack-stage-abinit-8.10.3-3ajpo7adcspznj2tu5fr3rxebanjtxhb/spack-src/src/95_drive/m_driver.F90:705
#15  0x40bc4a in abinit
	at /scratch-local/kraatm/USER-SPACK/build/spack-stage-abinit-8.10.3-3ajpo7adcspznj2tu5fr3rxebanjtxhb/spack-src/src/98_main/abinit.F90:444
#16  0x40864c in main
	at /scratch-local/kraatm/USER-SPACK/build/spack-stage-abinit-8.10.3-3ajpo7adcspznj2tu5fr3rxebanjtxhb/spack-src/src/98_main/abinit.F90:94

===================================================================================
=   BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
=   RANK 0 PID 592662 RUNNING AT node0001
=   KILLED BY SIGNAL: 11 (Segmentation fault)
===================================================================================

This is a problem with the ZDOTC routine of MKL, not with ABINIT.

I don’t remember if the --enable-zdot-bugfix option of the build system was already fully functional in ABINIT 8 but it could be worth trying to add it to the SPACK recipe.

Thanks for your reply.

Unfortunately I don’t really know how to customize the config-file, as there is no usual ‘.ac9’ file in SPACK.

When I ‘spack info abinit’ there is no such variant as zdot-bugfix to ‘spack install abinit@8.10.3 +zdot-bugfix’ or something like this.

As you told me there’s a problem with the mkl-library, I tried to build ABINIT with the OpenBLAS-library instead - and it works!

spack install abinit@8.10.3 ^openblas

spack find -vd abinit

==> 1 installed package
-- linux-rocky8-icelake / gcc@8.5.0 -----------------------------
abinit@8.10.3~install-tests~libxml2+mpi~openmp~scalapack~wannier90 optimization-flavor=standard patches=2d6f332
    atompaw@4.2.0.0 patches=152deb6
        libxc@2.2.2~cuda+shared
            perl@5.34.1+cpanm+shared+threads
                berkeley-db@18.1.40+cxx~docs+stl patches=b231fcc
                bzip2@1.0.8~debug~pic+shared
                    diffutils@3.8
                        libiconv@1.16 libs=shared,static
                gdbm@1.19
                    readline@8.1
                        ncurses@6.2~symlinks+termlib abi=none
                            pkgconf@1.8.0
                zlib@1.2.12+optimize+pic+shared patches=0d38234
        openblas@0.3.20~bignuma~consistent_fpcsr~ilp64+locking+pic+shared symbol_suffix=none threads=none
    fftw@3.3.10+mpi~openmp~pfft_patches precision=double,float
        intel-oneapi-mpi@2021.6.0~external-libfabric~ilp64
    hdf5@1.12.2~cxx~fortran+hl~ipo~java+mpi+shared~szip~threadsafe+tools api=default build_type=RelWithDebInfo
        cmake@3.23.1~doc+ncurses~ownlibs~qt build_type=Release
            curl@7.83.0~gssapi~ldap~libidn2~librtmp~libssh~libssh2~nghttp2 libs=shared,static tls=gnutls
                gnutls@3.6.15~guile+zlib
                    gettext@0.21+bzip2+curses+git~libunistring+libxml2+tar+xz
                        libxml2@2.9.13~python
                            xz@5.2.5~pic libs=shared,static
                        tar@1.34 zip=pigz
                            pigz@2.7
                            zstd@1.5.2+programs compression=none libs=shared,static
                    libidn2@2.3.0
                        libunistring@0.9.10
                    nettle@3.4.1
                        gmp@6.2.1 libs=shared,static
                            autoconf@2.69 patches=35c4492,7793209,a49dd5b
                                m4@1.4.19+sigsegv patches=9dc5fbd,bfdffa7
                                    libsigsegv@2.13
                            automake@1.16.5
                            libtool@2.4.7
            expat@2.4.8+libbsd
                libbsd@0.11.5
                    libmd@1.0.4
            libarchive@3.5.2+iconv compression=bz2lib,lz4,lzma,lzo2,zlib,zstd crypto=mbedtls libs=shared,static programs=none xar=expat
                lz4@1.9.3 libs=shared,static
                lzo@2.10 libs=shared,static
                mbedtls@2.28.0+pic build_type=Release libs=static
            libuv@1.44.1
            rhash@1.4.2 patches=093518c,3fbfe46
    netcdf-c@4.8.1~dap~fsync~hdf4~jna+mpi~parallel-netcdf+pic+shared patches=de556da
    netcdf-fortran@4.5.4~doc+pic+shared

Thank you very much! I am going to do some tests now and probably come back to you.

Further information:

spack info abinit

AutotoolsPackage:   abinit

Description:
    ABINIT is a package whose main program allows one to find the total
    energy, charge density and electronic structure of systems made of
    electrons and nuclei (molecules and periodic solids) within Density
    Functional Theory (DFT), using pseudopotentials and a planewave or
    wavelet basis. ABINIT also includes options to optimize the geometry
    according to the DFT forces and stresses, or to perform molecular
    dynamics simulations using these forces, or to generate dynamical
    matrices, Born effective charges, and dielectric tensors, based on
    Density-Functional Perturbation Theory, and many more properties.
    Excited states can be computed within the Many-Body Perturbation Theory
    (the GW approximation and the Bethe-Salpeter equation), and Time-
    Dependent Density Functional Theory (for molecules). In addition to the
    main ABINIT code, different utility programs are provided.

Homepage: https://www.abinit.org/

Preferred version:  
    9.6.1     https://www.abinit.org/sites/default/files/packages/abinit-9.6.1.tar.gz

Safe versions:  
    9.6.1     https://www.abinit.org/sites/default/files/packages/abinit-9.6.1.tar.gz
    9.4.2     https://www.abinit.org/sites/default/files/packages/abinit-9.4.2.tar.gz
    8.10.3    https://www.abinit.org/sites/default/files/packages/abinit-8.10.3.tar.gz
    8.10.2    https://www.abinit.org/sites/default/files/packages/abinit-8.10.2.tar.gz
    8.8.2     https://www.abinit.org/sites/default/files/packages/abinit-8.8.2.tar.gz
    8.6.3     https://www.abinit.org/sites/default/files/packages/abinit-8.6.3.tar.gz
    8.2.2     https://www.abinit.org/sites/default/files/packages/abinit-8.2.2.tar.gz
    8.0.8b    https://www.abinit.org/sites/default/files/packages/abinit-8.0.8b.tar.gz

Deprecated versions:  
    None

Variants:
    Name [Default]                    When    Allowed values          Description
    ==============================    ====    ====================    ==========================================

    install-tests [off]               --      on, off                 Install test cases
    libxml2 [off]                     --      on, off                 Enable libxml2 support, used by multibinit
    mpi [on]                          --      on, off                 Builds with MPI support. Requires MPI2+
    openmp [off]                      --      on, off                 Enables OpenMP threads. Use threaded FFTW3
    optimization-flavor [standard]    --      safe, standard,         Select the optimization flavor to use.
                                              aggressive              
    scalapack [off]                   --      on, off                 Enables scalapack support. Requires MPI
    wannier90 [off]                   --      on, off                 Enables the Wannier90 library

Build Dependencies:
    atompaw  blas  fftw-api  gnuconfig  hdf5  lapack  libxc  libxml2  mpi  netcdf-c  netcdf-fortran  scalapack  wannier90

Link Dependencies:
    atompaw  blas  fftw-api  hdf5  lapack  libxc  libxml2  mpi  netcdf-c  netcdf-fortran  scalapack  wannier90

Run Dependencies:
    None
1 Like