[gpaw-users] Addition of TS09 vdW significantly increases the time between SCF cycles
Melander Marko
marko.melander at aalto.fi
Fri Aug 8 11:13:52 CEST 2014
Dear GPAW users and developers,
I've been using the LCAO of GPAW for running an MD simulation of 256
water molecules in an periodic cubic cell of 19.7340 Å. The calculations
are made with CSC's Taito cluster with 64-128 processors.
Using just a GGA functional (PBE), the calculation runs nice and smooth.
The SCF is fast and there the next cycle starts within a minute from the
previous, see below:
Time WFS Density Energy Fermi Poisson
iter: 1 11:58:45 -3532.368747 1 5
iter: 2 11:59:04 -2.43 -3532.229711 0 2
iter: 3 11:59:23 -2.51 -3532.032569 0 2
iter: 4 11:59:42 -2.76 -3532.002383 0 2
iter: 5 12:00:01 -3.32 -3532.001169 0 1
iter: 1 12:00:53 -3532.088203 0 5
iter: 2 12:01:12 -2.44 -3531.963170 0 2
iter: 3 12:01:32 -2.52 -3531.783862 0 2
iter: 4 12:01:51 -2.78 -3531.750498 0 2
iter: 5 12:02:09 -3.33 -3531.747798 0 1
When I add the TS09 van der Waals corrections, things turn much slower.
Yes, the time for SCF to convergence doesn't change but it takes 25 minutes
to begin the next SCF cycle:
iter: 1 19:54:44 -3526.852837 0 5
iter: 2 19:55:01 -2.41 -3526.698160 0 2
iter: 3 19:55:17 -2.49 -3526.463683 0 2
iter: 4 19:55:33 -2.75 -3526.433403 0 2
iter: 5 19:55:49 -3.27 -3526.434217 0 1
iter: 1 20:19:32 -3527.211391 0 5
iter: 2 20:19:48 -2.41 -3527.059798 0 2
iter: 3 20:20:04 -2.48 -3526.834764 0 2
iter: 4 20:20:21 -2.75 -3526.783390 0 2
iter: 5 20:20:37 -3.27 -3526.779247 0 1
This delay must the caused by TS09 because the only difference in
the GPAW routine (below) is the addition this vdW correction. I thought the
addition of TS09 would be 'free' (as it was for 32 H2O molecules). I've
played with the parallelization, adding memory, number of cores but these
have little effect on the time between SCF cycles.
Why is there such a large difference in the time taken between SCF cycles just
from addition TS09? And how can this be fixed?
calc = GPAW(mode='lcao',
xc = 'PBE',
basis = 'dzp',
gpts = (96,96,96),
nbands = -10,
kpts=(1,1,1),
convergence={'energy':1.0e-4,'eigenstates':1.0e-6,'density':1.0e-3},
txt='H2O_256_Berendsen_TS09.txt',
mixer = Mixer(),
occupations = FermiDirac(0.05),
spinpol=False,
poissonsolver= PoissonSolver(relax='GS', eps=10e-7),
parallel={'band':8,'sl_default': (6,6,64)})
atoms.set_calculator(calc)
atoms.set_calculator(calc)
atoms.get_potential_energy()
# add TS09 vdW corrections
cc = vdWTkatchenko09prl(HirshfeldPartitioning(calc),
vdWradii(atoms.get_chemical_symbols(), 'PBE'))
atoms.set_calculator(cc)
atoms.get_potential_energy()
Best regards,
Marko Melander
More information about the gpaw-users
mailing list