Page 1 of 1

Some questions and errors when running the wiki example: "Bandstructure of SrVO3 in GW".

Posted: Sun Apr 21, 2024 2:54 pm
by hszhao.cn@gmail.com
Hi here,

I try to test the example here with vasp.6.4.2 using 20 cores for each running step by executing the doall.sh, but failed with the following error:

Code: Select all

Wannier90 mode
 Computing MMN (overlap matrix elements)
 Computing AMN (projections onto localized orbitals)
 -----------------------------------------------------------------------------
|                                                                             |
|     EEEEEEE  RRRRRR   RRRRRR   OOOOOOO  RRRRRR      ###     ###     ###     |
|     E        R     R  R     R  O     O  R     R     ###     ###     ###     |
|     E        R     R  R     R  O     O  R     R     ###     ###     ###     |
|     EEEEE    RRRRRR   RRRRRR   O     O  RRRRRR       #       #       #      |
|     E        R   R    R   R    O     O  R   R                               |
|     E        R    R   R    R   O     O  R    R      ###     ###     ###     |
|     EEEEEEE  R     R  R     R  OOOOOOO  R     R     ###     ###     ###     |
|                                                                             |
|     WANNIER90_ORBITAL_DEFINITIONS: ERROR: L= 0 M= 0 not implemented         |
|                                                                             |
|       ---->  I REFUSE TO CONTINUE WITH THIS SICK JOB ... BYE!!! <----       |
|                                                                             |
 -----------------------------------------------------------------------------
Another question puzzled me it the following information given in the OUTCAR.GW0:

Code: Select all

available memory per node:   33.26 GB, setting MAXMEM to   34056
I don't understand how this 33.26 GB was calculated.

I've attached the related files mentioned above. Any tips and comments will be helpful.

Regards,
Zhao

Re: Some questions and errors when running the wiki example: "Bandstructure of SrVO3 in GW".

Posted: Mon Apr 22, 2024 3:32 pm
by michael_wolloch
Dear Zhao,

I could reproduce your problem. This tutorial is quite old, and needs to be updated. The problem is that the tag NUM_WANN now defaults to NBANDS, and overwrites the value in wannier90.win!

If you set NUM_WANN = 3 in your INCARs, the error will disappear.

It is recommended to put the whole contents of wannier90.win in the INCAR nowadays, using the WANNIER90_WIN tag.

As for your question about memory: This is indeed a bit confusing. But VASP is trying to do the right thing:

The printed number is available (free) memory per MPI rank on the node, not the total amount of memory installed on your node. This is computed from info in /proc/meminfo. If several nodes are used, the one with the lowest amount of free memory is used for the computation.

E.g. on my laptop I have 16 GB of memory. I decided to run the SrVO3 example locally because it is only a quick tutorial. I used 4 mpi ranks, and got:

Code: Select all

available memory per node:    1.28 GB, setting MAXMEM to    1312
Thus, only 5.12 GB of memory was free to use for the calculation. Note that VASP only uses 90% of that when setting MAXMEM.

We will update the tutorial. Thanks for reporting the problem,
cheers, Michael

Re: Some questions and errors when running the wiki example: "Bandstructure of SrVO3 in GW".

Posted: Tue Apr 23, 2024 4:10 am
by hszhao.cn@gmail.com
Dear Michael,
If you set NUM_WANN = 3 in your INCARs, the error will disappear.
I tried as follows, but still failed:

Code: Select all

werner@MZ73-LM1-000:~/Downloads/SrVO3_GW_band$ cat INCAR.WAN 
System = SrVO3                         # system name                  
ISMEAR = 0                             # Gaussian smearing 
ALGO = NONE                            # no electronic changes required 
NELM = 1                               # one electronic step suffices, since WAVECAR from previous step is present
NBANDS = 48                            # number of bands used 
LWAVE = .FALSE.                        # do not overwrite WAVECAR
LCHARG = .FALSE.                       # do not overwrite CHGCAR
LWANNIER90_RUN = .TRUE.                # run wannier90 in library mode
NUM_WANN = 3

werner@MZ73-LM1-000:~/Downloads/SrVO3_GW_band$ module load vasp
werner@MZ73-LM1-000:~/Downloads/SrVO3_GW_band$ ./doall.sh 
See the attachment for more information.
It is recommended to put the whole contents of wannier90.win in the INCAR nowadays, using the WANNIER90_WIN tag.
Thank you for letting me know about this matter.
As for your question about memory: This is indeed a bit confusing. But VASP is trying to do the right thing:
I tried to verify consistency based on your description, but I still couldn't confirm:

Code: Select all

werner@MZ73-LM1-000:~/Downloads/SrVO3_GW_band$ cat /proc/meminfo |grep -i avai
MemAvailable:   774822964 kB
In my case, I use 20 cores, so I check it in python as follows:

Code: Select all

>>> 774822964/1024/1024
738.9287605285645
>>> 33.26 * 20
665.1999999999999
As you can see, 738.9287605285645 is very different from 665.1999999999999 in GB.

Regards,
Zhao

Re: Some questions and errors when running the wiki example: "Bandstructure of SrVO3 in GW".

Posted: Tue Apr 23, 2024 4:16 am
by hszhao.cn@gmail.com
Dear Michael,
As you can see, 738.9287605285645 is very different from 665.1999999999999 in GB.
I got it, as you have mentioned previously:
Note that VASP only uses 90% of that when setting MAXMEM.
So, they are consistent as shown below:

Code: Select all

>>> 738.9287605285645 * 0.9
665.035884475708

Re: Some questions and errors when running the wiki example: "Bandstructure of SrVO3 in GW".

Posted: Tue Apr 23, 2024 7:32 am
by michael_wolloch
Dear Zhao,

good that the memory issue was cleared up.

As for your problem with the wannier90 step in the SrVO3 example. I see some errors in your stdout file:

Code: Select all

cp: cannot stat 'wannier90.win.PBE': No such file or directory
and similar for HSE, and GW0.

I think you might have deleted those files per accident. If i run

Code: Select all

bash cleanup.sh
bash doall.sh
after adding NUM_WANN = 3 to the INCAR.WAN, the script runs without issue. (plotbands.sh might be problematic however.) We will modify this example to use py4vasp ASAP and move it from the wiki to the tutorial page.

In the future, please provide a minimal reproducible example so we can help you more efficiently.

Is this issue now resolved?
Cheers, Michael

Re: Some questions and errors when running the wiki example: "Bandstructure of SrVO3 in GW".

Posted: Tue Apr 23, 2024 9:28 am
by hszhao.cn@gmail.com
Dear Michael,
I think you might have deleted those files per accident. If i run

Code: Select all

bash cleanup.sh
bash doall.sh

after adding NUM_WANN = 3 to the INCAR.WAN, the script runs without issue.
Yes, you're right. The reason is that I used a custom vasp_rm script, as shown below, which triggered this issue:

Code: Select all

$ cat ~/.local/bin/vasp_rm 
#!/usr/bin/env bash
#https://www.vasp.at/tutorials/latest/#start-3.3
if [ -s INCAR ] && [ -s POSCAR ] && [ -s POTCAR ]; then
  rm -f CHG CHGCAR CONTCAR STOPCAR DOSCAR DYNMAT EIGENVAL IBZKPT OPTIC OSZICAR OUTCAR PROCAR PCDAT WAVECAR XDATCAR \
        PARCHG vasprun.xml REPORT vaspout.h5 PENALTYPOT HILLSPOT ML_LOGFILE ML_ABN ML_FFN ML_HIS ML_REG
  if [ -s wannier90.win ]; then
    rm -f wannier90*
  fi
fi
(plotbands.sh might be problematic however.)
I don't know why you say that. However, according to my actual test, the above script works well.

BTW, according to our previous discussion on this subject, I think the following information given by vasp is not very appropriate:
available memory per node: 166.84 GB, setting MAXMEM to 170845
More precisely, maybe the following one is better:
available memory per mpi-rank: 166.84 GB, setting MAXMEM to 170845
Regards,
Zhao

Re: Some questions and errors when running the wiki example: "Bandstructure of SrVO3 in GW".

Posted: Tue Apr 23, 2024 12:08 pm
by michael_wolloch
Dear Zhao,
More precisely, maybe the following one is better:

Code: Select all

available memory per mpi-rank: 166.84 GB, setting MAXMEM to 170845
I will double-check what happens if OpenMP threads are used as well and make an issue to address this.

On my laptop, I got strange results with plotbands.sh, but that might be a problematic Gnuplot installation on my side. Good to know that it works for you.

Can I mark this issue as resolved now?

Cheers, Michael

Re: Some questions and errors when running the wiki example: "Bandstructure of SrVO3 in GW".

Posted: Wed Apr 24, 2024 4:37 am
by hszhao.cn@gmail.com
Dear Michael,
Can I mark this issue as resolved now?
If you feel that all the questions discussed have been solved perfectly, I have no problem with that.

Regards,
Zhao