Page 1 of 1

Different memory consumption behavior in 4.6.36 & 5.2.12

Posted: Tue May 15, 2012 8:27 am
by oloklir
Hello dear VASP users and admins.

I'm currently using VASP 4.6.36 to calculate Spin+XC treatment.
Also using 5.2.12 to calculate small size systems.

Both versions of VASP are compiled with Intel Compiler 11.1.080, and same version of Intel MKL. OpenMPI 1.4.5 is used in both versions for parallel calculations.

I found that if I set ISPIN=2, VASP will consume memory about twice than setting default value. And I always have to set ISPIN value as 2.

The cluster I'm using has 16GB memory per each node.
There are 2 quad cores in each node, total 8 cores per node.


= The problem explanation begins. =

I have a set of input files, INCAR, KPOINTS, POSCAR, POTCAR, which are used with 4.6.31 & 5.2.12 without any modifications.

When passing electronic steps, each VASP process use VIRTual memory as 1530MB, and RESidental memory as 1.2GB.
VIRT : 1530MB * 8 = 12GB
RES : 1.2GB * 8 = 9.6GB
SWAP : 0
When during electronic steps, 4.6.36 & 5.2.12 seems consuming almost same memory.

Problem occurs when running with 5.2.12, in ionic steps.

VASP 4.6.31 keep running without additional memory consumption even in ionic steps.
But when VASP 5.2.12 in ionic steps, as below.
VIRT : 3100MB * 8 = 24.8GB
RES : 2.0GB * 8 = 16GB
SWAP : 8GB

...
And here are major time difference in OUTCAR of 5.2.12 & 4.6.36.
==> OUTCAR_vasp5.2.12 <==
------------------------ aborting loop because EDIFF is reached ----------------------------------------
CHARGE: cpu time 822.42: real time 1634.13
FORLOC: cpu time 0.28: real time 0.74
FORNL : cpu time 222.30: real time 291.86
STRESS: cpu time 444.09: real time 444.63
FORCOR: cpu time 3.76: real time 4.86
FORHAR: cpu time 0.42: real time 0.43
MIXING: cpu time 0.04: real time 0.04

FORCE on cell =-STRESS in cart. coord. units (eV):
Direction XX YY ZZ XY YZ ZX
--------------------------------------------------------------------------------------


==> OUTCAR_vasp4.6.36 <==
------------------------ aborting loop because EDIFF is reached ----------------------------------------
--------------------------------------------------------------------------------------------------------
CHARGE: VPU time 26.76: CPU time 26.77
FORLOC: VPU time 0.15: CPU time 0.15
FORNL : VPU time 163.90: CPU time 163.96
STRESS: VPU time 481.49: CPU time 481.65
FORCOR: VPU time 1.50: CPU time 1.50
FORHAR: VPU time 0.33: CPU time 0.33
MIXING: VPU time 0.01: CPU time 0.01
--------------------------------------------------------------------------------------------------------


As you can see above, it seems that memory SWAPing occurs in "CHARGE" step when using VASP5.2.12.

I still didn't found any solution about this. I tried changing some input parameters, recompiling with various options... but could not avoid problem.
(-heap-array... and so on...)

I still didn't understand why VASP5.2.12 consumes additional memory at that moment, and VASP4.6.36 does not.

In our lab, we are still using VASP4.6 due to memory problem on VASP5.2.
Please give me some opinions. Thank you for reading.



<span class='smallblacktext'>[ Edited ]</span>

Re: Different memory consumption behavior in 4.6.36 & 5.2.12

Posted: Tue Sep 10, 2024 2:18 pm
by support_vasp

Hi,

We're sorry that we didn’t answer your question. This does not live up to the quality of support that we aim to provide. The team has since expanded. If we can still help with your problem, please ask again in a new post, linking to this one, and we will answer as quickly as possible.

Best wishes,

VASP