[Wien] FFTW compiling

Pavel Ondračka pavel.ondracka at email.cz
Tue Jun 6 09:56:39 CEST 2023


Besides what Gavin mentioned, even if you get the correct fftw-openmpi
(or elpa-mpi) package, Red Hat distros don't install mpi stuff by
default into /usr/lib64. The reason is that more that one MPI runtime
can be installed (like MPICH vs OpenMPI) and the mpi libraries are MPI-
runtime specific. Thus the MPI libraries for the specific MPI runtime
tend to be with some specific directories like /usr/lib64/openmpi/lib/
and this path will only get added to the LD_LIBRARY_PATH if you load
the corresponding MPI module.

Additionally, the module files are also compiler and MPI specific so
also reside in custom directories, like
/usr/lib64/gfortran/modules/openmpi/
Now the main issue is that this custom locations are just not possible
to set up correctly with siteconfig, the script just doesn't give you
that much freedom as this breaks some expectations is has. So manual
editing of Makefiles is needed. In general one really needs to know
what he is doing to link Wien2k against system libraries with Red Hat
distros. So yeah, I've been there and I don't recommend it. In that
regard the download source/configure/make/make install combo is usually
simpler.

This only concerns MPI though, if you can live with k-point + OpenMP
parallelization only, than linking against system OpenBLAS and FFTW is
quite simple.

Best regards
Pavel

On Sun, 2023-06-04 at 13:31 +0000, Ilias Miroslav, doc. RNDr., PhD.
wrote:
> Hello,
> 
> ad:
> https://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/msg18799.html
> 
> I have CentOS 7, but the elpa rpm packages do not contain the
> libfftw3_mpi.a file,  only /usr/lib64/libfftw3_threads.a
> 
> Can the libfftw3_threads.a  file  be instead of libfftw3_mpi.a  ?
> 
> Miro
> 
> 
> PS:  List of all fftw library files:
> ls /usr/lib64/libfftw*          
> /usr/lib64/libfftw.a           /usr/lib64/libfftw3_omp.so.3.3.2*    
>  /usr/lib64/libfftw3f_omp.so.3@        /usr/lib64/libfftw3l_omp.so@
> /usr/lib64/libfftw.so@         /usr/lib64/libfftw3_threads.a        
>    /usr/lib64/libfftw3f_omp.so.3.3.2*    
>  /usr/lib64/libfftw3l_omp.so.3@
> /usr/lib64/libfftw.so.2@       /usr/lib64/libfftw3_threads.so@      
>    /usr/lib64/libfftw3f_threads.a          
>  /usr/lib64/libfftw3l_omp.so.3.3.2*
> /usr/lib64/libfftw.so.2.0.7*   /usr/lib64/libfftw3_threads.so.3@    
>  /usr/lib64/libfftw3f_threads.so@          
>  /usr/lib64/libfftw3l_threads.a
> /usr/lib64/libfftw3.a          /usr/lib64/libfftw3_threads.so.3.3.2*
>  /usr/lib64/libfftw3f_threads.so.3@    
>  /usr/lib64/libfftw3l_threads.so@
> /usr/lib64/libfftw3.so@        /usr/lib64/libfftw3f.a           
>  /usr/lib64/libfftw3f_threads.so.3.3.2*
>  /usr/lib64/libfftw3l_threads.so.3@
> /usr/lib64/libfftw3.so.3@      /usr/lib64/libfftw3f.so@             
>    /usr/lib64/libfftw3l.a            
>  /usr/lib64/libfftw3l_threads.so.3.3.2*
> /usr/lib64/libfftw3.so.3.3.2*  /usr/lib64/libfftw3f.so.3@       
>  /usr/lib64/libfftw3l.so@                
>  /usr/lib64/libfftw_threads.a
> /usr/lib64/libfftw3_omp.a      /usr/lib64/libfftw3f.so.3.3.2*       
>    /usr/lib64/libfftw3l.so.3@          /usr/lib64/libfftw_threads.so@
> /usr/lib64/libfftw3_omp.so@    /usr/lib64/libfftw3f_omp.a       
>  /usr/lib64/libfftw3l.so.3.3.2*          
>  /usr/lib64/libfftw_threads.so.2@
> /usr/lib64/libfftw3_omp.so.3@  /usr/lib64/libfftw3f_omp.so@     
>  /usr/lib64/libfftw3l_omp.a        
>  /usr/lib64/libfftw_threads.so.2.0.7*
> 
> _______________________________________________
> Wien mailing list
> Wien at zeus.theochem.tuwien.ac.at
> http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
> SEARCH the MAILING-LIST at: 
> http://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/index.html



More information about the Wien mailing list