memory for low scaling ACFDT

Question on input files/tags, interpreting output, etc.

Please check whether the answer to your question is given in the VASP online manual or has been discussed in this forum previously!

Moderators: Global Moderator, Moderator

Post Reply
Message
Author
kdoblhoff
Newbie
Newbie
Posts: 28
Joined: Thu Feb 04, 2021 12:10 pm

memory for low scaling ACFDT

#1 Post by kdoblhoff » Fri Aug 06, 2021 3:44 pm

I have a question on the memory scaling for the low scaling ACFDT algorithm. I thought that the memory (for fixed number of threads) should scale as Nk*(NGX_supercell*NGY_supercell*NGZ_supercell)^2*NTAUPAR, however, I have two calculations that are essentially the same, except for the kpoint grid and the reported memory needed does not seem to work out:
Calculation 1 (2x2x1 k-points) (showing the relevant parts of the OUTCAR)

Code: Select all

 running   32 mpi-ranks, with    1 threads/rank
 Found      4 irreducible k-points:
 Distributing  12 time points into  8 group(s)
 FFT grid for supercell:   NGX =  48; NGY =  32; NGZ =  24
 min. memory requirement per mpi rank   1633.5 MB, per node  52270.5 MB
Calculation 2 (8x8x1 k-points) (showing the relevant parts of the OUTCAR)

Code: Select all

 running   32 mpi-ranks, with    1 threads/rank
 Found     25 irreducible k-points:
 Distributing  12 time points into  1 group(s)
 FFT grid for supercell:   NGX = 192; NGY = 128; NGZ =  24
 min. memory requirement per mpi rank   3509.1 MB, per node 112290.9 MB
In both cases precfoc was set to fast.
Clearly, the memory requirement given in the OUTCAR (scaled by 1/NTAUPAR) of the second calculation is only roughly a factor 17 higher than that of the first calculation, much less than expected from the equation above (Given Nk=4 in the first calculation and Nk=25 in the second one, and (NGX*NGY*NGZ) of the second calculation is a factor 16 larger than that of the first, giving a total of 25/4*16^2). Where am erring?

Thank you and best regards,
Katharina Doblhoff-Dier

marie-therese.huebsch
Full Member
Full Member
Posts: 175
Joined: Tue Jan 19, 2021 12:01 am

Re: memory for low scaling ACFDT

#2 Post by marie-therese.huebsch » Sun Aug 08, 2021 11:05 pm

Dear Katharina Doblhoff-Dier,

Thank you for bringing up this topic! I would like to investigate it in detail. Could you please provide the VASP version you are using and a minimal example to look into (POSCAR, POTCAR, INCAR, KPOINTS, OUTCAR)?

Best regards,
Marie-Therese

kdoblhoff
Newbie
Newbie
Posts: 28
Joined: Thu Feb 04, 2021 12:10 pm

Re: memory for low scaling ACFDT

#3 Post by kdoblhoff » Wed Aug 11, 2021 12:04 pm

Dear Marie-Therese,
Thank you for your reaction! The vasp version we currently use is vasp.6.1.2_patched.
I attach the relevant input and output files. INCAR, POTCAR and POSCAR are identical in both calculations. I uploaded 2 directories for the 2 different calculations.
Thank you for having a look!
Best regards,
Katharina Doblhoff-Dier
You do not have the required permissions to view the files attached to this post.

merzuk.kaltak
Administrator
Administrator
Posts: 277
Joined: Mon Sep 24, 2018 9:39 am

Re: memory for low scaling ACFDT

#4 Post by merzuk.kaltak » Mon Aug 23, 2021 9:18 am

Dear Katharina,

I have restructured the wiki entry concerning the required memory for low-scaling RPA calculations. The previous entry was not correct, thanks you for pointing this out.
A much better estimate is given by following formula:

Code: Select all

(NGX*NGY*NGZ)*(NGX_S*NGY_S*NGZ_S) / ( NCPU  / NTAUPAR ) * 16
According to the files you upload one obtains 1764 and 3528 MB per node for the 2x2x1 and 8x8x1 k-points job as an estimate, respectively. This is quite close to the actual used memory of 2204 and 4685 MB per node as written in the posted OUTCAR files.

Note, apart from decreasing NTAUPAR you can also increase the number of MPI ranks to decrease the required memory per node.
So, running the 8x8x1 with 64 ranks might finish successfully.

Post Reply