[QE-users] [QE-GPU] Running GPU calculations optimally

2023-11-13 Thread Anson Thomas
Dear all,
I am trying to use Quantum ESPRESSO v 7.1 with GPU acceleration.
However, since I am new to this field, I need to learn about the flags and
variables that could be exported to achieve optimum performance.

Here is a bunch of variables that were suggested to me:

export GPU_FORCE_64BIT_PTR=0
export GPU_MAX_HEAP_SIZE=100
export GPU_USE_SYNC_OBJECTS=1
export GPU_MAX_ALLOC_PERCENT=100
export GPU_SINGLE_ALLOC_PERCENT=100

export OMP_NUM_THREADS=1
export MPI_PER_GPU=20
export ENABLE_MPS=false
export LS_HYPERTHREAD=true

I could not find the documentation about these variables, nor do I
understand how these work.
The GPUs are not being utilized fully. I say this since I tried to run some
basic profiling, all of which indicate the same:

[image: image.png]


I am using a SLURM  script to run my jobs. Every GPU node on the cluster
has 2 Tesla V100-SXM2-16GB and 40CPU cores.
The job is launched using "mpirun -np $SLURM_NTASKS pw.x -ndiag 1 -in
input.in > output.out"

Could anyone shed some light on the following:
1. What flags and variables could be set, and how do I decide which are
relevant for my calculations?
2. Where can I read more about these variables and flags to test which ones
are relevant for the calculations?
3. Can the mpirun command be modified for better performance?

Any insights would be very helpful.



Sincerely,
*Anson Thomas*
Research Scholar,
Department of Chemistry,
Indian Institute of Technology, Roorkee
___
The Quantum ESPRESSO community stands by the Ukrainian
people and expresses its concerns about the devastating
effects that the Russian military offensive has on their
country and on the free and peaceful scientific, cultural,
and economic cooperation amongst peoples
___
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users

[QE-users] What is the correct method to calculate ELF?

2023-05-12 Thread Anson Thomas
Dear all,

I am trying to calculate the electron localization function (ELF) using
Quantum ESPRESSO. However, I realize that it is not possible to correctly
calculate it with either the Ultrasoft or the PAW pseudopotentials.

With ultrasoft pseudos, the method is *not implemented fully*, while with
the PAW pseudopotentials, as per an old answer here
<https://narkive.com/10wFnvfE:2.689.38>, seems to indicate that ELF with
PAW is also not implemented.

As detailed in the answer here <https://narkive.com/F2GAQGzz:2.375.462>:
"The correct calculation of the ELF with ultrasoft pseudopotentials or with
PAW requires to compute the contribution from augmentation charges."

Can someone provide some insights on how this contribution may be computed?
Alternatively, is there another software that can calculate the ELF
correctly for a periodic system?

Any insights provided would be much helpful.



Anson Thomas,

Indian Institute of Technology, Roorkee
___
The Quantum ESPRESSO community stands by the Ukrainian
people and expresses its concerns about the devastating
effects that the Russian military offensive has on their
country and on the free and peaceful scientific, cultural,
and economic cooperation amongst peoples
___
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users

[QE-users] What is the artifact of the Pt valence density referred to in example04 of the Environ module?

2022-10-19 Thread Anson Thomas
Dear QE Users,

I am trying to model a metal oxide system with an adsorbate in Quantum
Espresso with the Environ module. For this, I am following an example from
the module itself, example04 which

"shows how to use pw.x to model 2D periodic systems in contact with a
continuum solvent." (from README file)

The file further goes on to state that:

"Note that the keyword solvent_mode='full' is mandatory in this calculation,
 *in order to remove the artifact of the Pt valence density, which presents
a hole close to the position of ion, due to the missing core electrons*. In
order to avoid the continuum solvent to enter such a hole, a quickly
vanishing gaussian density is added at the position of the nuclei when
defining the dielectric. The same problem is likely to occur in halogens
and other transition metals."

Can anyone give some idea as to what this artifact is in the Pt valence
density, the hole close to the ion, and missing core electrons are?

(The pseudopotentials used in the example are: O.pbe-rrkjus.UPF
C.pbe-rrkjus.UPF Pt.pbe-nd-rrkjus.UPF)

Any insights on this would be greatly appreciated.



Sincerely,


Anson



*Anson Thomas*
Research Scholar, IIT Roorkee
___
The Quantum ESPRESSO community stands by the Ukrainian
people and expresses its concerns about the devastating
effects that the Russian military offensive has on their
country and on the free and peaceful scientific, cultural,
and economic cooperation amongst peoples
___
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users

Re: [QE-users] [EXT] Error in installation of Environ module

2022-06-16 Thread Anson Thomas
Dear Oliviero,

Thank you for the response. Although I do desire to use GPUs for my
calculations, as of now, I am only using GPUs.
I started off using the gfortran compiler already present on my system (GNU
Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)). However, it was giving
many fatal errors and the setup finally came to an abrupt end. Part of the
output has been shown below:

Pre-compiling QE...

mpif-sizeof.h:66.41:
Included at mpif.h:63:
Included at xclib_utils_and_para.f90:21:

  CHARACTER, DIMENSION(1,1,1,1,1,1,1,*)::x
 1
Error: Array specification at (1) has more than 7 dimensions
mpif-sizeof.h:72.41:
Included at mpif.h:63:
Included at xclib_utils_and_para.f90:21:

  CHARACTER, DIMENSION(1,1,1,1,1,1,1,1,*)::x
 1
Error: Array specification at (1) has more than 7 dimensions
mpif-sizeof.h:78.41:
Included at mpif.h:63:
Included at xclib_utils_and_para.f90:21:

  CHARACTER, DIMENSION(1,1,1,1,1,1,1,1,1,*)::x
 1
Error: Array specification at (1) has more than 7 dimensions
mpif-sizeof.h:84.41:
Included at mpif.h:63:
Included at xclib_utils_and_para.f90:21:

  CHARACTER, DIMENSION(1,1,1,1,1,1,1,1,1,1,*)::x
 1


Using the Nvidia compilers resolved these problems but said that it was
"Unable to open MODULE" in various files, as I mentioned in my question
originally
Do you have any suggestions? I would be happy to provide any extra
information to help troubleshoot this issue.


Sincerely,
Anson
IIT Roorkee

-- 
Sent by *ANSON THOMAS*
___
The Quantum ESPRESSO community stands by the Ukrainian
people and expresses its concerns about the devastating
effects that the Russian military offensive has on their
country and on the free and peaceful scientific, cultural,
and economic cooperation amongst peoples
___
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users

[QE-users] Error in installation of Environ module

2022-06-16 Thread Anson Thomas
Dear users,

I am trying to install Environ 2.0.3 with QE 6.8 on a Centos 7 machine. The
compilers being used are nvfortran, nvcc etc. provided as part of the
latest NVIDIA HPC SDK package.
I am, following the instruction given here (
https://environ.readthedocs.io/en/latest/install/configuring_install.html),
and accordingly, I ran ./configure from the QE root directory, then from
Environ directory. On running make install, I encounter the following error:

NVFORTRAN-F-0004-Unable to open MODULE file class_io.mod
(../../Environ/src/calculator.f90: 36)
NVFORTRAN/x86-64 Linux 22.5-0: compilation aborted
make[4]: *** [../../Environ/src/calculator.o] Error 2
make[4]: *** Waiting for unfinished jobs
NVFORTRAN-F-0004-Unable to open MODULE file class_setup.mod
(../../Environ/src/global_objects.f90: 32)
NVFORTRAN/x86-64 Linux 22.5-0: compilation aborted
make[4]: *** [../../Environ/src/global_objects.o] Error 2
NVFORTRAN-F-0004-Unable to open MODULE file env_char_ops.mod
(../../Environ/utils/io.f90: 32)
NVFORTRAN/x86-64 Linux 22.5-0: compilation aborted
make[4]: *** [../../Environ/utils/io.o] Error 2
NVFORTRAN-F-0004-Unable to open MODULE file class_io.mod
(../../Environ/src/destructor.f90: 33)
NVFORTRAN/x86-64 Linux 22.5-0: compilation aborted
make[4]: *** [../../Environ/src/destructor.o] Error 2
NVFORTRAN-F-0004-Unable to open MODULE file class_io.mod
(../../Environ/src/input.f90: 32)
NVFORTRAN/x86-64 Linux 22.5-0: compilation aborted

I also tried running configure with --enable-environment option, yet it is
giving the same errors. The {QE_ROOT}/Environ/install/QE_comp.log file is
attached here:
https://drive.google.com/file/d/1agxCVeh1pnuvH0DSsXLi67nxFy4QsBOJ/view?usp=sharing

Kindly help me with this installation.


Sincerely,
Anson
-- 
Sent by *ANSON THOMAS*
___
The Quantum ESPRESSO community stands by the Ukrainian
people and expresses its concerns about the devastating
effects that the Russian military offensive has on their
country and on the free and peaceful scientific, cultural,
and economic cooperation amongst peoples
___
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users

[QE-users] [QE-Users]Bader charge analysis using USPP

2022-03-29 Thread Anson Thomas
Dear QE-Users,

I wish to do a Bader charge analysis on my system. I have carried out the
calculations using USPP
I'm aware that Bader code requires the all-electron density which is
generated using PAW.
Is there any way to do it using USPP-generated data?? Any help would be
appreciated.


Thanks in advance

--
*Anson Thomas*
M.Sc. Chemistry, IIT Roorkee
___
The Quantum ESPRESSO community stands by the Ukrainian
people and expresses its concerns about the devastating
effects that the Russian military offensive has on their
country and on the free and peaceful scientific, cultural,
and economic cooperation amongst peoples
___
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users

[QE-users] Choice of awin for average.x calculations

2022-01-21 Thread Anson Thomas
Dear QE Users,

I have a general (and maybe naive) question to ask. What value should we
choose for awin for average.x calculations?
Any insights on this would be appreciated.

Thank you


-- 
*Anson Thomas*
M.Sc. Chemistry, IIT Roorkee
___
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users

[QE-users] [QE-GPU] Disable GPU acceleration for some calculations

2021-11-28 Thread Anson Thomas
Dear QE experts,

I have installed QE 6.8 with GPU acceleration (Ubuntu 18.04.5 LTS
(GNU/Linux 4.15.0-135-generic x86_64, Processor: Intel Xeon Gold 5120 CPU
2.20 GHz (2 Processor) RAM: 96 GB Graphics Card: NVIDIA Quadro P5000 (16
GB)).
For some pw.x calculations, however, I desire to not use the GPU
acceleration. Is there a way (some command-line option, or adding lines to
bashrc or some other way) to not use GPU acceleration for a particular
calculation without recompiling QE?

--
*Anson Thomas*
M.Sc. Chemistry, IIT Roorkee
___
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users

Re: [QE-users] [QE-GPU] How to "Fill the CPU with OpenMP threads" to run QE-GPU

2021-10-08 Thread Anson Thomas
Yes, this works.
Thank you so much.

On Fri, Oct 8, 2021 at 9:41 PM Pietro Bonfa'  wrote:

> Does this work?
>
> export OMP_NUM_THREADS=1
> mpirun -np 1 pw.x -inp input.in
>
>
> Best,
> Pietro
>
> On 10/8/21 18:08, Anson Thomas wrote:
> > Thanks for the suggestion.
> > I exported OMP_NUM_THREADS= 1 to my bashrc (I am not using a script to
> > run QE; doing it directly using mpirun pw.x -inp input.in
> > <http://input.in/
> >  > output). However, it is still giving the same error
> >
> >   from  addusdens_gpu  : error # 1
> >cannot allocate aux2_d
> >
> > I even tried experimenting with  OMP_NUM_THREADS= 2,3 .. but all in vain.
> > Also, I have noted that always  MPI processes is distributed on  1 node
> > only regardless of the number of threads or processors (using mpirun -np
> > ) provided.
> >
> > Do you have any other suggestions?
> >
> >
> > Regards,
> > Anson
> >
> >
> >
> >
> >
> >
> > --
> > Sent by *ANSON THOMAS*
> > *M.Sc. Chemistry, IIT Roorkee, India*
>
>
> Firma il tuo 5x1000 all’Università di Parma, aiutaci a essere sempre più
> accoglienti e inclusivi verso le nostre studentesse e i nostri studenti -
> Indica 00308780345 nella tua denuncia dei redditi.
>


-- 
Sent by *ANSON THOMAS*
*M.Sc. Chemistry, IIT Roorkee, India*
___
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users

Re: [QE-users] [QE-GPU] How to "Fill the CPU with OpenMP threads" to run QE-GPU

2021-10-08 Thread Anson Thomas
Thanks for the suggestion.
I exported OMP_NUM_THREADS= 1 to my bashrc (I am not using a script to run
QE; doing it directly using mpirun pw.x -inp input.in > output). However,
it is still giving the same error

 from  addusdens_gpu  : error # 1
  cannot allocate aux2_d

I even tried experimenting with  OMP_NUM_THREADS= 2,3 .. but all in vain.
Also, I have noted that always  MPI processes is distributed on  1 node
only regardless of the number of threads or processors (using mpirun -np )
provided.

Do you have any other suggestions?


Regards,
Anson






-- 
Sent by *ANSON THOMAS*
*M.Sc. Chemistry, IIT Roorkee, India*
___
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users

[QE-users] [QE-GPU] How to "Fill the CPU with OpenMP threads" to run QE-GPU

2021-10-08 Thread Anson Thomas
ss returned
a non-zero exit code. Per user-direction, the job has been aborted.
--
--
mpirun detected that one or more processes exited with non-zero status,
thus causing
the job to be terminated. The first process to do so was:

  Process name: [[58344,1],12]
  Exit code:127
--
I believe I am not "filling the CPUs with OpenMP threads", or running 1 MPI
on 1 GPU, as suggested in this document.

Can someone please give some suggestions? Sorry for the long post. I am
totally new to this field. Any help would be appreciated. Thanks in advance
-- 
Sent by *ANSON THOMAS*
*M.Sc. Chemistry, IIT Roorkee, India*
___
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users

[QE-users] [QE-GPU] - Error 'making' pw

2021-09-22 Thread Anson Thomas
I am trying to install the latest version of quantum espresso (6.8) with
GPU- support on an Ubuntu 18.04.5 LTS (GNU/Linux 4.15.0-135-generic x86_64)

System Configuration:
Processor: Intel Xeon Gold 5120 CPU ],[ 2.20 GHz (2 Processor)
RAM: 96 GB
HDD: 6 TB
Graphics Card: NVIDIA Quadro P5000 (16 GB)

Following the steps given at https://gitlab.com/QEF/q-e-gpu/-/wikis/home, I
installed all required packages (CUDA Toolkit v8+, PGI Compilers v17.10+,
OpenMP package v3+), and tried configuring using

./configure --with-cuda="/opt/nvidia/hpc_sdk/Linux_x86_64/21.7/cuda/11.4/"
--with-cuda-runtime=11.4 --with-cuda-cc=6.1 --enable-openmp --with-
scalapack=no

It successfully configures, but on doing 'make all',

It works fine until it starts compiling pw.x. This is the error that I am
getting

make[1]: Entering directory '/home/anson/qe/qe-6.8/PW'
( cd src ; make all || exit 1 )
make[2]: Entering directory '/home/anson/qe/qe-6.8/PW/src'
if test -n "" ; then \
( cd ../.. ; make  || exit 1 ) ; fi
mpif90 -mp -cuda -gpu=cc6.1,cuda11.4 -o pw.x \
   pwscf.o  libpw.a ../../Modules/libqemod.a
../../KS_Solvers/libks_solvers.a ../../upflib/libupf.a ../../XClib/xc_lib.a
../../FFTXlib/libqefft.a ../../LAXlib/libqela.a ../../UtilXlib/libutil.a
../../dft-d3/libdftd3qe.a /home/anson/qe/qe-6.8//clib/clib.a
/home/anson/qe/qe-6.8//MBD/libmbd.a  -cudalib=cufft,cublas,cusolver
/home/anson/qe/qe-6.8//external/devxlib/src/libdevXlib.a
/home/anson/qe/qe-6.8//EIGENSOLVER_GPU/lib_eigsolve/lib_eigsolve.a
-L/home/anson/qe/qe-6.8//external/devxlib/src -ldevXlib  -L/usr/local/lib
-llapack  -lblas  -L/home/anson/qe/qe-6.8//FoX/lib  -lFoX_dom -lFoX_sax
-lFoX_wxml -lFoX_common -lFoX_utils -lFoX_fsys   -lblas
../../Modules/libqemod.a(random_numbers_gpu.o): In function
`random_numbers_gpum_randy_vect_gpu_':
/home/anson/qe/qe-6.8/Modules/random_numbers_gpu.f90:67: undefined
reference to `curandDestroyGenerator'
/home/anson/qe/qe-6.8/Modules/random_numbers_gpu.f90:68: undefined
reference to `curandCreateGenerator'
/home/anson/qe/qe-6.8/Modules/random_numbers_gpu.f90:69: undefined
reference to `curandSetPseudoRandomGeneratorSeed'
/home/anson/qe/qe-6.8/Modules/random_numbers_gpu.f90:73: undefined
reference to `curandGenerateUniformDouble'
pgacclnk: child process exit status 1: /usr/bin/ld
Makefile:315: recipe for target 'pw.x' failed
make[2]: *** [pw.x] Error 2
make[2]: Leaving directory '/home/anson/qe/qe-6.8/PW/src'
Makefile:9: recipe for target 'pw' failed
make[1]: *** [pw] Error 1
make[1]: Leaving directory '/home/anson/qe/qe-6.8/PW'
Makefile:70: recipe for target 'pw' failed
make: *** [pw] Error 1



Any suggestions to solve this would be greatly appreciated.

Thank you.

-- 
Sent by *ANSON THOMAS*
*IIT Roorkee, India*
___
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users