HELP: how to reduce the memory needs

Total energy, geometry optimization, DFT+U, spin....

Moderator: bguster

Locked
mazuju
Posts: 15
Joined: Wed Jul 14, 2010 2:05 am

HELP: how to reduce the memory needs

Post by mazuju » Thu Aug 26, 2010 5:56 pm

I am running abinit 6.0.4 on an x86_64_gnu_4.1 eight-core 16gb machine, compiled with mpirun, and everything works well for small systems, and recently I am following the tutorial to calculate the linear and non-linear optic properties of GaAs crystal.
When I set ngkpt to be 24*24*24, ecut 30, the job quit because no enough memory.
then I set mkmem=0, but the job still quit after the WF files occupy all my free disk space (about 80G ). In the log file I can find that the required memory is about 158M, but during the computation I use "top " command. I can see that almost all the memory is used. What is the matter?
Another question is that how to reduce the memory needs at the expense of (some) CPU time ?

Best,
Ma ZJ

The job stopped in DATASET3 during the calculation.
Part of the log file: mkmem=0
DATASET 3 : space group F-4 3 m (#216); Bravais cF (face-center cubic)
================================================================================
Values of the parameters that define the memory need for DATASET 3.
intxc = 0 ionmov = 0 iscf = -2 xclevel = 1
lmnmax = 1 lnmax = 1 mband = 30 mffmem = 1
P mgfft = 40 mkmem = 0 mpssoang= 2 mpw = 2357
mqgrid = 3001 natom = 2 nfft = 64000 nkpt = 32000
nloalg = 4 nspden = 1 nspinor = 1 nsppol = 1
nsym = 24 n1xccc = 2501 ntypat = 2 occopt = 1
================================================================================
P This job should need less than 158.885 Mbytes of memory.
Rough estimation (10% accuracy) of disk space for files :
WF disk file : 1758.369 Mbytes ; DEN or POT disk file : 0.490 Mbytes.
mkmem==0 => use of 2 WF temporary disk files
================================================================================

Input files
#GaA
#Prepare the computation of linear and non-linear optic properties
#of GaAs crystal : ground-state with few bands,
#then non-SCF with a larger number of bands, then ddk for different directions
#Note that the k point sampling shoud be finer for significant results. The cut-off energy is also too low.

ndtset 6

#First dataset : SC run with kpoints in the IBZ
iscf1 3
nband1 5
nstep1 100
kptopt1 1
nbdbuf1 0
prtden1 1 getden1 0 getwfk1 0 ! Usual file handling data


#Second dataset : NSC run with large number of bands, and points in the IBZ
iscf2 -2
nband2 30 ! This number of bands might be too low for non-linear optics and real part of linear optics
nstep2 100
kptopt2 1
getwfk2 1
getden2 1


#Third dataset : NSC run with large number of bands, and points in the the full BZ
iscf3 -2
nband3 30
nstep3 100
kptopt3 3
getwfk3 2
getden3 1
mkmem3 0
mkqmem3 0
mk1mem3 0

#Fourth dataset : ddk response function along axis 1
iscf4 -3
nband4 30
nstep4 1
nline4 0
kptopt4 3

nqpt4 1
qpt4 0.0d0 0.0d0 0.0d0
rfdir4 1 0 0
rfelfd4 2
getwfk4 3
mkmem4 0
mkqmem4 0
mk1mem4 0

#Fifth dataset : ddk response function along axis 2
iscf5 -3
nband5 30
nstep5 1
nline5 0
kptopt5 3

nqpt5 1
qpt5 0.0d0 0.0d0 0.0d0
rfdir5 0 1 0
rfelfd5 2
getwfk5 3

mkmem5 0
mkqmem5 0
mk1mem5 0

#Sixth dataset : ddk response function along axis 3
iscf6 -3
nband6 30
nstep6 1
nline6 0
kptopt6 3

nqpt6 1
qpt6 0.0d0 0.0d0 0.0d0
rfdir6 0 0 1
rfelfd6 2
getwfk6 3

mkmem6 0
mkqmem6 0
mk1mem6 0

#Data common to all datasets
nshiftk 4
shiftk 0.5 0.5 0.5
0.5 0.0 0.0
0.0 0.5 0.0
0.0 0.0 0.5
ngkpt 20 20 20

acell 3*10.60
amu 69.72 74.9216
diemac 10.0
ecut 30
iscf 3
ixc 1
natom 2
nbdbuf 2
ntypat 2
rprim 0 .5 .5 .5 0 .5 .5 .5 0
xred 3*0.00d0 3*0.25d0
tnons 72*0.0
typat 1 2
tolwfr 1.e-20
znucl 31 33

pmanglade
Posts: 20
Joined: Mon Aug 17, 2009 9:49 am

Re: HELP: how to reduce the memory needs

Post by pmanglade » Mon Aug 30, 2010 8:30 am

Hi,
Are you sure that you are really running out of RAM (memory) ? Your input file seems to run fine on my machine (with 2GB of RAM) until it feels my partition (after the beginning of dataset 4). The wave function files use 35 GB each... Maybe, during the run, you could remove wave function file that are not used anymore ? Anyway, I think you'd better find a larger hard drive for your big machine.
Regards
PMA

mazuju
Posts: 15
Joined: Wed Jul 14, 2010 2:05 am

Re: HELP: how to reduce the memory needs

Post by mazuju » Tue Aug 31, 2010 10:13 am

pmanglade wrote:Hi,
Are you sure that you are really running out of RAM (memory) ? Your input file seems to run fine on my machine (with 2GB of RAM) until it feels my partition (after the beginning of dataset 4). The wave function files use 35 GB each... Maybe, during the run, you could remove wave function file that are not used anymore ? Anyway, I think you'd better find a larger hard drive for your big machine.
Regards
PMA


Hi PMA,
You are right! The wavefunction files are huge. and I konw why all memory is used , that is because almost 14GB of RAM was cached when writing WFK files to the hard drive.
Thank you very much!
Best,
Mazj

Locked