The oneAPI is likely easier to install as it has less steps. As you
probably saw, after setting up the Intel repo in Ubuntu, there is only
one step "sudo apt install intel-hpckit" that will install ifort, MKL,
and intelmpi [1]. Comparing that to gfortran where you will have
multiple packages and steps for getting the equivalent functionality
(gfortran, OpenBLAS, and openmpi/ScaLAPACK) [2]. The WIEN2k developers
mostly use the Intel compilers. Thus, the WIEN2k code tends to be bug
free with ifort whereas gfortran has typically in the past had a few
bugs on new releases as it is less tested by developers though those
have been getting resolved through user bug reports.
On the other hand, the Intel compilers (e.g., Parallel Studio XE) were
not always free to use as they are currently today with oneAPI. The use
of gfortan with WIEN2k gained popularity during the time the Intel
compilers had to be paid for. One might only hope that Intel never goes
back to a pay model for their compilers. Some of the old versions of
ifort compiler were quite buggy causing WIEN2k to have memory leaks [3]
or crash, where as WIEN2k seemed more stable (without those errors) with
gfortran. I haven't seen reports of similar WIEN2k issues with oneAPI
but there might not be a large base of WIEN2k users using oneAPI yet.
The above is just based on my observations from the mailing list posts.
Finally, I suggest you choose the compiler environment that you prefer
and hopefully the above information can aid you in your decision.
[1]
https://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/msg21942.html
[2]
https://github.com/gsabo/WIEN2k-Docs/blob/main/WIEN2k21.1_Ubuntu22.04_Install_with_gfortran.pdf
[3]
https://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/msg18191.html
Best Regards,
Gavin
WIEN2k user
On 7/24/2022 11:06 PM, Victor Zenou wrote:
Thanks a lot Laurie and Gavin
Both ways, Intel ifort compiler and Intel mkl library or Fortran
compiler and OpenBlas library, were shown by you to work fine.
Today I'm going to give it a try.
Which way, in terms of ease of installation is preferred?
Victor
בתאריך יום ב׳, 25 ביולי 2022 ב-2:28 מאת Gavin Abo
<gabo13...@gmail.com>:
So after installing Ubuntu 22.04 LTS [1], installing the needed
operating system packages (perl, tcsh, ...) per section "1
Introduction" page 3 of the WIEN2k 21.1 usersguide [2], and
installing oneAPI [3], I have been able to get WIEN2k 21.1 to
compile successfully for serial calculations
Granted, I had to make some small adjustments for Intel oneAPI but
following my old Intel compiler steps [4,5] held up quite well.
Since if you compare the steps in [4,5] to the steps below, you
should see that after tweaking the steps there are not that many
differences.
[1] https://youtu.be/oNEwEQ0uU1Y
[2] http://www.wien2k.at/reg_user/textbooks/usersguide.pdf
[3]
https://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/msg21942.html
[4]
https://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/msg18663.html
[5]
https://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/msg18664.html
*Install of WIEN2k 21.1 with oneAPI (ifort version 2021.6.0) in
Ubuntu 22.04 LTS*
username@computername:~/Desktop$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04 LTS
Release: 22.04
Codename: jammy
username@computername:~/Desktop$ ifort -v
ifort version 2021.6.0
username@computername:~/Desktop$ cd ~
username@computername:~$ wget
http://www.tddft.org/programs/libxc/down.php?file=5.2.3/libxc-5.2.3.tar.gz
...
username@computername:~$ ls -l
down.php\?file\=5.2.3%2Flibxc-5.2.3.tar.gz
-rw-rw-r-- 1 username username 45810705 May 16 08:53
'down.php?file=5.2.3%2Flibxc-5.2.3.tar.gz'
username@computername:~$ tar xvf
down.php\?file\=5.2.3%2Flibxc-5.2.3.tar.gz
...
username@computername:~$ cd libxc-5.2.3
username@computername:~/libxc-5.2.3$ autoreconf -i --force
...
username@computername:~/libxc-5.2.3$ ./configure FC=ifort CC=icc
--prefix=$HOME/libxc-5.2.3
...
username@computername:~/libxc-5.2.3$ make
...
username@computername:~/libxc-5.2.3$ make check
...
PASS: xc-run_testsuite
============================================================================
Testsuite summary for libxc 5.2.3
============================================================================
# TOTAL: 1
# PASS: 1
# SKIP: 0
# XFAIL: 0
# FAIL: 0
# XPASS: 0
# ERROR: 0
============================================================================
...
username@computername:~/libxc-5.2.3$ make install
...
username@computername:~/libxc-5.2.3$ ls ~/libxc-5.2.3/lib
libxc.a libxcf03.a libxcf03.la <http://libxcf03.la> libxcf90.a
libxcf90.la <http://libxcf90.la> libxc.la <http://libxc.la> pkgconfig
username@computername:~/libxc-5.2.3$ cd ~
username@computername:~$ wget https://www.fftw.org/fftw-3.3.10.tar.gz
...
username@computername:~$ tar xvf fftw-3.3.10.tar.gz
...
username@computername:~$ cd fftw-3.3.10
username@computername:~/fftw-3.3.10$ ./configure FCC=ifort CC=icc
MPICC=mpiicc CFLAGS="-gcc-sys" --enable-mpi --prefix=$HOME/fftw-3.3.10
...
username@computername:~/fftw-3.3.10$ make
...
username@computername:~/fftw-3.3.10$ make install
...
username@computername:~/fftw-3.3.10$ ls -l ~/fftw-3.3.10/include
~/fftw-3.3.10/lib
/home/username/fftw-3.3.10/include:
total 220
-rw-r--r-- 1 username username 2447 Jul 24 16:15 fftw3.f
-rw-r--r-- 1 username username 55032 Jul 24 16:15 fftw3.f03
-rw-r--r-- 1 username username 31986 Jul 24 16:15 fftw3.h
-rw-r--r-- 1 username username 27203 Jul 24 16:15 fftw3l.f03
-rw-r--r-- 1 username username 18678 Jul 24 16:15 fftw3l-mpi.f03
-rw-r--r-- 1 username username 36969 Jul 24 16:15 fftw3-mpi.f03
-rw-r--r-- 1 username username 9624 Jul 24 16:15 fftw3-mpi.h
-rw-r--r-- 1 username username 25902 Jul 24 16:15 fftw3q.f03
/home/username/fftw-3.3.10/lib:
total 2108
drwxrwxr-x 3 username username 4096 Jul 24 16:15 cmake
-rw-r--r-- 1 username username 1936856 Jul 24 16:15 libfftw3.a
-rwxr-xr-x 1 username username 904 Jul 24 16:15 libfftw3.la
<http://libfftw3.la>
-rw-r--r-- 1 username username 201560 Jul 24 16:15 libfftw3_mpi.a
-rwxr-xr-x 1 username username 959 Jul 24 16:15
libfftw3_mpi.la <http://libfftw3_mpi.la>
drwxrwxr-x 2 username username 4096 Jul 24 16:15 pkgconfig
username@computername:~/fftw-3.3.10$ cd ~/WIEN2k
username@computername:~/WIEN2k$ ls -l
total 143680
-rw-r--r-- 1 username username 147128320 Jun 19 2021 WIEN2k_21.1.tar
username@computername:~/WIEN2k$ tar xvf WIEN2k_21.1.tar
...
username@computername:~/WIEN2k$ gunzip *.gz
username@computername:~/WIEN2k$ ./expand_lapw
WARNING: This will expand all WIEN.tar files !!!
It will overwrite all changes you have made previously in the WIEN
subdirectories
continue (y/n)
y
...
username@computername:~/WIEN2k$ wget
https://raw.githubusercontent.com/gsabo/WIEN2k-Patches/master/21.1/init_phonon_lapw.patch
...
username@computername:~/WIEN2k$ patch -b init_phonon_lapw
init_phonon_lapw.patch
patching file init_phonon_lapw
Note: Apply any other patches that you want to test that are at
https://github.com/gsabo/WIEN2k-Patches/tree/master/21.1
username@computername:~/WIEN2k$ ./siteconfig
...
Selection: LI
...
Your compiler: ifort
...
Your compiler: icc
...
Would you like to use LIBXC (usually not needed, ONLY for experts
who want to play with different DFT options. It must have been
installed before)? (y,N):
y
...
Do you want to automatically search for LIBXC installations? (Y,n):
Y
Please specify a comma separated list of directories to search!
(If no list is entered, /usr/lib64, /usr/local and /opt will be
searched as default):
/home/username/libxc-5.2.3
Finding the required library in /home/username/libxc-5.2.3 ...
More than one libxc was found in the specified directory(ies).
Pick one of the following (enter the number of the line of your
choice or 0 to manually specify a path)!:
/home/username/libxc-5.2.3/lib/libxc.a
/home/username/libxc-5.2.3/src/.libs/libxc.a
1
...
Do you want to automatically search for FFTW installations? (Y,n):
Y
Please specify a comma separated list of directories to search!
(If no list is entered,
/usr/lib64, /usr/local and /opt will be searched as default):
/home/username/fftw-3.3.10
Finding the required fftw3 library-files in
/home/username/fftw-3.3.10 ....
/home/username/fftw-3.3.10/lib/libfftw3.a
/home/username/fftw-3.3.10/.libs/libfftw3.a
Your present FFTW choice is: FFTW3
Present FFTW root directory is:
Do you want to use a FFTW version from the list above? (Y,n):
Y
Please enter the line number of the chosen version or enter 0 to
manually specify your choice!:
1
The present target architecture of your FFTW library is: lib64
Please specify the target achitecture of your FFTW library (e.g.
lib64) or accept present choice (enter): lib
The present name of your FFTW library: fftw3
Please specify the name of your FFTW library or accept present
choice (enter): fftw3
...
Is this correct? (Y,n): Y
...
Current settings:
M OpenMP switch: -qopenmp
O Compiler options: -O -FR -mp1 -w -prec_div -pc80 -pad
-ip -DINTEL_VML -traceback -assume buffered_io -I$(MKLROOT)/include
L Linker Flags: $(FOPT)
-L$(MKLROOT)/lib/$(MKL_TARGET_ARCH) -lpthread -lm -ldl -liomp5
P Preprocessor flags '-DParallel'
R R_LIBS (LAPACK+BLAS): -lmkl_intel_lp64 -lmkl_intel_thread
-lmkl_core
F FFTW options: -DFFTW3
-I/home/username/fftw-3.3.10/include
FFTW-LIBS: -L/home/username/fftw-3.3.10/lib -lfftw3
X LIBX options: -DLIBXC
-I/home/username/libxc-5.2.3/include
LIBXC-LIBS: -L/home/username/libxc-5.2.3/lib -lxcf03 -lxc
S Save and Quit
To change an item select option.
Selection: S
...
Shared Memory Architecture? (y/N):y
Do you know/need a command to bind your jobs to specific nodes?
(like taskset -c). Enter N / your_specific_command: N
...
Do you have MPI, ScaLAPACK, ELPA, or MPI-parallel FFTW installed
and intend
to run finegrained parallel?
This is useful only for BIG cases (50 atoms and more / unit cell)
and your HARDWARE has at least 16 cores (or is a cluster with
Infiniband)
You need to KNOW details about your installed MPI, ELPA, and FFTW )
(y/N) N
...
Selection: Q
...
Selection: A
...
Compile time errors (if any) were:
...
Please enter the full path of the perl program: /usr/bin/perl
...
Please enter the full path to your temporary directory: /tmp
...
username@computername:~/WIEN2k$ ./userconfig_lapw
...
username@computername:~/WIEN2k$ w2web
...
Kind Regards,
Gavin
WIEN2k user
On 7/24/2022 5:05 AM, Victor Zenou wrote:
Dear Wien2k users,
I want to install Wien2k_21.1 on Ubuntu 22.04 LTS equipped with
Intel I7 processors.
As Intel ifort compiler is no longer standalone and also Intel®
Parallel Studio XE is no longer available as a stand-alone
product, one can use Intel oneAPI 2022 or Intel oneAPI 2021 instead.
Also Intel mkl library could be found under "Intel® oneAPI MKL".
Few months ago I had to struggle with these different Intel's
names/versions, etc. I kept getting error messages.
Now that I got a new computer I'd like to ask if someone recently
installed Wien2k_21.1 on Ubuntu 22.04 LTS and can give me some
directions?
Yes, I looked at Wien2k's FAQ, Wien2k mailing-list archive and
Intel websites.
Also I'm not sure what I must have to do in order to have a fully
efficient functioning computer, as we all know that even if you
got the best machine money can buy, and for most of us this is
not true, one needs to "prepare" it properly.
Best regards, Victor Zenou
_______________________________________________
Wien mailing list
Wien@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