:D 获取中...

1 Installation

1.1 QE 6.7 + gcc 9.3 + OpenMPI 3.1.6 + OpenBlas 0.3.10 + FFTW3 (passed) + thermo_pw

tar -xvf qe-6.7-ReleasePack.tgz
cd qe-6.7
# download thermo_pw <https://github.com/dalcorso/thermo_pw/releases/download/1.4.1/thermo_pw.1.4.1.tar.gz>
tar -xvf thermo_pw.1.4.1.tar.gz
# Modify Modules/parameters.f90 and set npk=999999
# Modify PHonon/PH/phcom.f90 and set maxter = 500
# Modify PHonon/PH/lambda.f90 and set npk = 500

make veryclean
export FFTW_INCLUDE=/home/ywmu/backup/Src/comlib/fftw-3.3.8-gcc-4.8.5/include/ 
./configure --with-scalapack=yes FC=gfortran F90=gfortran F77=gfortran CC=gcc MPIF90=mpif90 BLAS_LIBS="/home/ywmu/backup/Src/comlib/gnu/libopenblas.a" SCALAPACK_LIBS="/home/ywmu/backup/Src/comlib/gnu/libscalapack.a"   FFT_LIBS="/home/ywmu/backup/Src/comlib/fftw-3.3.8-gcc-4.8.5/lib/libfftw3.a"  --prefix=/home/ywmu/backup/config/soft/qe.bin/qe68.gcc7.fftw
## Tips: 1. Add -ffpe-summary=none to FFLAGS
cd thermo_pw
make join_qe
cd .. 
nohup make all xspectra epw w90 want d3q  yambo thermo_pw &
tail -f nohup.out
make install  
  • Mind: want will generate bands.x and dos.x, and they will cover ones generated by pp. So you should rename them.

1.2 QE 6.6 + gcc 9.3.0 + OpenMPI 3.1.6 + AMD AOCL (passed)

tar -xvf qe-6.6-ReleasePack.tgz
cd qe-6.6
# Modify Modules/parameters.f90 and set npk=999999
# Modify PHonon/PH/ phcom.f90 and set maxter = 500
export FFTW_INCLUDE=/opt/local/amd/2.2/amd-fftw/include 
./configure --with-scalapack=yes FC=gfortran F90=gfortran F77=gfortran CC=gcc MPIF90=mpif90 BLAS_LIBS="/opt/local/amd/2.2/amd-blis/lib/libblis.a" LAPACK_LIBS="/opt/local/amd/2.2/amd-libflame/lib/libflame.a" SCALAPACK_LIBS="/opt/local/amd/2.2/amd-scalapack/lib/libscalapack.a" FFT_LIBS="/opt/local/amd/2.2/amd-fftw/lib/libfftw3.a" --prefix=/home/ywmu/backup/Src/qe/bin/qe66.gcc9.amd
## Tips: 1. delete  BEEF_LIBS,BEEF_LIBS_SWITCH and -Duse_beef 2. Add -D__FFTW3 to DFLAGS 3. Add -ffpe-summary=none to FFLAGS 
nohup make pw ph pp pwcond neb cp ld1 tddfpt xspectra hp epw w90 yambo  d3q &
tail -f nohup.out
make install  

1.3 pgi 18.10 (required) + OpenMPI 3.1.6 + MKL 2015 + Cuda 9.2 (GPU version passed)

  • Do not use -enable-openmp flag for configuration, errors happen easily!
  • Only pw.x ported on GPU!
tar -xvf qq-e-gpu-qe-gpu-6.5a2.tar.gz
cd q-e-gpu-qe-gpu-6.5a2
export PATH=/opt/pgi/linux86-64-llvm/18.10/bin:$PATH
export LD_LIBRARY_PATH=/opt/pgi/linux86-64-llvm/18.10/lib:$LD_LIBRARY_PATH
# load openmpi path 
# Computing power of 1080Ti: 60
export MKLROOT=/opt/intel15/composerxe/mkl
./configure --with-scalapack=no  FC=pgfortran F90=pgfortran F77=pgfortran CC=pgcc MPIF90=mpif90  BLAS_LIBS="-L${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lpthread -lm -ldl"  FFT_LIBS="/opt/local/fftw3.pgi18/lib/libfftw3.a" --prefix=/home/muyw/backup/qe.mkl  -with-cuda="/usr/local/cuda-9.2" --with-cuda-cc=60  --with-cuda-runtime=9.2  
make pw 
make install

1.3.1 Notes

  • Cuda 9.1/9.2/10.0 in Pgi compiler failed, so a standalone cuda-9.2 was used.
  • -with-cuda-cc=60 comes from the output of pgaccelinfo.
  • Only pw.x and phcg.x could be accelerated by GPU in 6.6a1 version.

1.4 intel MPI (high version needed)

tar -xvf q-e-qe-6.5.tar.gz
cd q-e-qe-6.5

. ~/.soft/envs/env_compiler oneapi
export FFTW_INCLUDE=${MKLROOT}/include/fftw
./configure --with-scalapack=intel F90=ifort F77=ifort CC=icc MPIF90=mpiifort  FFT_LIBS="${MKLROOT}/interfaces/fftw3xf/libfftw3xf_intel.a" --prefix=/home/ywmu/backup/Src/qe/bin.onepai     #-enable-openmp
nohup make pw ph pp pwcond neb cp  ld1 tddfpt xspectra hp epw w90 yambo  d3q &
make install

1.4.1 TYCloud

tar -xvf q-e-qe-6.8.tar.gz
cd q-e-qe-6.8

module remove mpi/hpcx/gcc-7.3.1
module load compiler/intel/2021.3.0
module load  mpi/intelmpi/2021.3.0
export FFTW_INCLUDE=${MKLROOT}/include/fftw
./configure --with-scalapack=intel F90=ifort F77=ifort CC=icc MPIF90=mpiifort  FFT_LIBS="/public/home/ywmu_sxu/.soft/libadd/staticlib/oneapi/libfftw3xf_intel.a" --prefix=/public/home/ywmu_sxu/source/bin68 
nohup make pw ph pp pwcond neb cp  ld1 tddfpt xspectra hp epw w90 yambo  d3q &
make install

1.5 QE 7.1 + ELPA 2021.11 + Intel onepai 2021.11.0 (test)

cd elpa-2021.11.001
FC=mpiifort  CC=icc ./configure --prefix=/home/ywmu/backup/Src/comlib/elpa FCFLAGS="-O3" CFLAGS="-O3" --enable-option-checking=fatal  SCALAPACK_LDFLAGS="-L$MKL_HOME/lib/intel64 -lmkl_scalapack_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_lp64 -lpthread -lm -Wl,-rpath,$MKL_HOME/lib/intel64" SCALAPACK_FCFLAGS="-L$MKL_HOME/lib/intel64 -lmkl_scalapack_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_lp64 -lpthread -I$MKL_HOME/include/intel64/lp64" --enable-avx2
make
make install 

cd q-e-qe-7.1
export FFTW_INCLUDE=${MKLROOT}/include/fftw
export ELPAROOT=/home/ywmu/backup/Src/comlib/elpa
export ELPAVER=elpa-2021.11.001
./configure F90=ifort F77=ifort CC=icc MPIF90=mpiifort  FFT_LIBS="${MKLROOT}/interfaces/fftw3xf/libfftw3xf_intel.a" --prefix=/home/ywmu/backup/Src/qe/bin.onepai --with-scalapack=intel -enable-parallel -enable-openmp --with-elpa-include="${ELPAROOT}/include/${ELPAVER}/modules" --with-elpa-lib="${ELPAROOT}/lib/libelpa.a" --with-elpa-version=beyond
# add "-march=core-avx2" to FFLAGS and CFLAGS in make.inc
nohup make pw ph pp pwcond all_currents  kcw neb cp ld1 tddfpt xspectra hp epw w90 yambo  d3q &
nohup make  pwcond all_currents  kcw neb cp ld1 tddfpt xspectra hp epw w90 yambo  d3q &
make install

1.6 QE 7.1 + ELPA 2021.11 + gcc7 + OpenMPI 3.1.6 + MKL 2015(test)

cd elpa-2021.11.001
FC=mpiifort  CC=icc ./configure --prefix=/home/ywmu/backup/Src/comlib/elpa FCFLAGS="-O3" CFLAGS="-O3" --enable-option-checking=fatal  SCALAPACK_LDFLAGS="-L$MKL_HOME/lib/intel64 -lmkl_scalapack_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_lp64 -lpthread -lm -Wl,-rpath,$MKL_HOME/lib/intel64" SCALAPACK_FCFLAGS="-L$MKL_HOME/lib/intel64 -lmkl_scalapack_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_lp64 -lpthread -I$MKL_HOME/include/intel64/lp64" --enable-avx2
make
make install 

cd q-e-qe-7.1
export FFTW_INCLUDE=/home/ywmu/backup/Src/comlib/fftw-3.3.8.g7/include 
export ELPAROOT=/home/ywmu/backup/Src/comlib/elpa
export ELPAVER=elpa-2021.11.001

./configure FC=gfortran F90=gfortran F77=gfortran CC=gcc MPIF90=mpif90 FFT_LIBS="/home/ywmu/backup/Src/comlib/fftw-3.3.8.g7/lib/libfftw3.a"  BLAS_LIBS="/home/ywmu/backup/Src/comlib/gnu/libopenblas.a" --with-scalapack=yes SCALAPACK_LIBS="/home/ywmu/backup/Src/comlib/gnu/libscalapack.a" --prefix=/home/ywmu/backup/Src/qe/bin.ompi    -enable-parallel -enable-openmp --with-elpa-include="${ELPAROOT}/include/${ELPAVER}/modules" --with-elpa-lib="${ELPAROOT}/lib/libelpa.a" --with-elpa-version=beyond
nohup make pw ph pp pwcond all_currents  kcw neb cp ld1 tddfpt xspectra hp epw w90 yambo  d3q &
make install

1.7 Wannier90 3.1

  • download wanni90 3.1 version
  • Load Envs for gcc and Openmpi
  tar -xvf v3.1.0.tar.gz
  cd wannier90-3.1.0
  cp config/make.inc.ifort make.inc
  ### Edit make.inc:
  COMMS  = mpi
  MPIF90 = mpif90
   LIBS = /home/ywmu/backup/Src/comlib/gnu/libopenblas.a
###  Edit Makefile
PREFIX ?= /home/ywmu/.soft/espresso/otherbin

make 
make intall

1.8 Install PGI Compiler

2 Xcrysden

2.1 Install On Linux

  1. Download shemi-shared version of XCrysDen 1.6.2 from http://sobereva.com/attach/564/xcrysden-1.6.2_sobereva.tar.gz
  2. sudo yum install libGL-devel libGLU-devel libXmu-devel libXScrnSaver.x86_64
  3. configure
tar -xvf xcrysden-1.6.2_sobereva.tar.gz
cd xcrysden-1.6.2
./scripts/xcConfigure.sh
... (set no crystal)

2.1.1 Defaut parameters

vi ~/.xcrysden/custom-definitions
set xcMisc(gif_encoder)   convert
set xcMisc(ImageMagick.convert) "/usr/bin/convert \
                             -quality 300 -border 3x3 -bordercolor black"

### change background color from back to white
set myParam(BACKGROUND)      {1.00 1.00 1.00}

2.1.2 Useful shortcuts

2.1.3 Main window

  • Ctrl+p: Print to image
  • Ctrl+s: save structure (e.g. as xsf)
  • Ctrl+t: save state and structure (e.g. as xsf)
  • y: Coordinate system
  • f: forces
  • F3/F4: Primitive/Convertional Cell
  • shift+a: atomic color
  • shift+c: cell color
  • shift+n: supercell view

2.1.4 Surface

  • t: Transparent Fermi Surface
  • c: Display first Brillouin zone
  • p: Crop Fermi surface to first BZ
  • shift+s: surface color
  • `shift+c: cell color

2.2 Install On Windows

2.2.1 Install Cygwin

  • Download Cygwin from http://www.cygwin.com/

  • Double click setup-x86_64.exe, install it step by step, Select Domestic sources (e.g., 163.com), Install tcl-tk (8.6), tcl-togl, ImageMagick, xinit, mesa, libGLU1, libfftw3_3, libgfortran4 packages.

  • Set Environment for Xcrysden:

    export  DISPLAY=:0
    export PATH=$PATH:/usr/lib:/usr/lib/Togl2.0

2.2.2 Install Xcrysden

  • Download Xcrysden xcrysden-1.6.2-cygwin.tar.gz from http://www.xcrysden.org/, unzip it.
  • Run ./xcrysden from the its home directory.

2.3 Tips

  • The AdvGeom and Property modules are only active if the CRYSTAL package was installed, but the band path selection is available for all users.

3 Windows Gui for Quantum Espresso (QE)

Burai QuantumVITAS QE on Device Studio
Input geometry format xyz/POSCAR/xsf/pwscf/cif Only pwscf(+g2g),not convenient POSCAR/xyz/cif/hzw
Support Relaxation/Cell Relaxation/Single Point/Band Structure/DOS/MD Relaxation/Cell Relaxation/Single Point/Band Structure/DOS/MD/Transition State/TDDFT/Phonon Relaxation/Cell Relaxation/Single Point/Band Structure/DOS
Modeler Slab/Supercell/Translate No(+Vesta/Avogadro2/PyMatGen/vaspkit) Many functions from Device Studio
Optimization/MD Trace Movie Frames No
Band Structure Output Analysis and Plot s Bands, not convinent for K-path input Fat band, Copy K-path from materialscloud very convenient in Device Studio
On Development no yes yes
Drawback: supported tasks too few input geometry is not convenient MPI is Not supported. supported tasks too few

3.1 QE on Device Studio

  • Supported Tasks: Relaxation/Cell Relaxation/Single Point/Band Structure/DOS.
  • Drawback: MPI is Not supported. Analysis is too simple. The date for the generated images can not be exported.

3.1.1 More tasks

  • Creat a directory, such as D:\Temp\QEcmd
  • Copy mpi and qe from QuantumVITAS to D:\Temp\QEcmd
  • download busybox.exe to D:\Temp\QEcmd
  • Creat a QE_var.reg, and double click it. The content is as follows,
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\shell\RunQE]

[HKEY_CLASSES_ROOT\Directory\Background\shell\RunQE\command]
@="D:\\Temp\\QEcmd\\QE_init.bat"
  • Creat QE_init.bat,
@ECHO OFF
SET QEHOME=%~dp0
SET PATH=%QEHOME%mpi;%QEHOME%qe;%QEHOME%;%PATH%
busybox.exe sh
  • Go to the working directory, right click on the background, and click RunQE

  • Run tasks like,

export OMP_NUM_THREADS=1
mpiexec -np 2 pw.exe -in relax.in | tee  relax.out.pwscf
  • Open relax.out.pwscf with Avogadro2, and export it out as opt.cif.