reduce memory

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

Moderator: bguster

Locked
chen
Posts: 13
Joined: Mon Apr 19, 2010 4:58 am

reduce memory

Post by chen » Tue Mar 01, 2011 11:31 pm

Hi there,

I am running ABINIT with 72 carbon atoms with PAW, the cell is defined as:

Code: Select all

#============ below are in terms of Angstrom ============
acell 6.0  6.0  1.0  angstrom
rprim
 1.22800000  -2.12695839  0.0
 1.22800000   2.12695839  0.0
 0.0          0.0         10.0


for the parallelization part, the input is as:

Code: Select all

chkprim 0

#===========
# relax the position of the Fe atom
optcell  9
ionmov   2
ecutsm   0.5
ntime    50
dilatmx  1.2

nband    184

#=============================
# simple parallel setting
#wfoptalg  11
#nbdblock  45

#---------------------------------
# parallel
paral_kgb 1   # parallel activated over kpt, fft and bands, contain spin
npkpt    10  # CPUs for kpt
npband    1   # CPUs for bands
npfft     4   # CPUs for fft
bandpp    1
###wfoptalg  4   # Locally Optimal Block Preconditioned Conjugate Gradient (lobpcg) method of Knyazev.
wfoptalg  14  # Locally Optimal Block Preconditioned Conjugate Gradient (lobpcg) method of Knyazev.
nloalg    14  # default for NCPP. 14 for PAW
fftalg    401
intxc     0
fft_opt_lob  2
istwfk    200*1

#mkmem        1
#mkqmem       1
#mk1mem       1


I am using ecut=400eV and pawecutdg 1600 eV, the required memory is
"P This job should need less than 1909.936 Mbytes of memory."
is there a way to further reduce the memory on each node? I also performed almost the same job with VASP, using almost the same fft meshes:

dimension x,y,z NGX = 128 NGY = 128 NGZ = 90
dimension x,y,z NGXF= 256 NGYF= 256 NGZF= 180

VASP needs much less memory:

Code: Select all

  total amount of memory used by VASP on root node 412323. kBytes
 ========================================================================

    base      :    30000. kBytes
    nonl-proj :    25668. kBytes
    fftplans  :    22548. kBytes
    grid      :   236355. kBytes
    one-center:      279. kBytes
    wavefun   :    97473. kBytes


How do I achieve such a low memory usage in ABINIT? I noticed that if I increase npfft, then the ABINIT runs very slow, since I have to decrease npband or npkpt, Thanks a lot!

best
Chen

mverstra
Posts: 655
Joined: Wed Aug 19, 2009 12:01 pm

Re: reduce memory

Post by mverstra » Sat Mar 05, 2011 11:25 am

Hello,

your dilatmx might be lowered. Depends what you want to do.

The way to reduce memory is fft parallelization, but as you have seen this is bandwidth critical and fairly slow in abinit. VASP is better for this parallelization (you are using the same number of processors?) and this is how they reduce the memory footprint, but they are also strongly bandwidth dependent...

Usually 2Gb/core is available in clusters these days, as a minimum.

Matthieu
Matthieu Verstraete
University of Liege, Belgium

chen
Posts: 13
Joined: Mon Apr 19, 2010 4:58 am

Re: reduce memory

Post by chen » Sun Mar 06, 2011 6:19 pm

Thank you for your reply!

I am doing parallel over fft meshes to reduce the memory. Sometimes I found that doing parallel over FFT makes the code faster than doing parallel over the kpoint and spin. This is contradictory to the tutorial, but might be due to the the fact that my system is pretty large and each node uses 4000+ MB memory if I do not do parallel over FFT meshes.

best
Chen

Locked