Skip to content
Commits on Source (2)
### ###
### GPAW benchmark case M: Copper Filament ### GPAW benchmark: Copper Filament
### ###
from __future__ import print_function from __future__ import print_function
...@@ -30,9 +30,15 @@ z = 4 ...@@ -30,9 +30,15 @@ z = 4
h = 0.22 h = 0.22
kpts = (1,1,8) kpts = (1,1,8)
txt = 'output.txt' txt = 'output.txt'
maxiter = 24 maxiter = 30
parallel = {'sl_default': (2,2,64)} parallel = {'sl_default': (2,2,64)}
convergence = {'energy': 0.005, # eV / electron
'density': 1.0e-4,
'eigenstates': 1.0e-5, # eV^2 / electron
'bands': 'occupied',
'forces': float('inf') # eV / Ang Max
}
# output benchmark parameters # output benchmark parameters
if rank == 0: if rank == 0:
print("#"*60) print("#"*60)
...@@ -47,22 +53,24 @@ if rank == 0: ...@@ -47,22 +53,24 @@ if rank == 0:
print("#"*60) print("#"*60)
print("") print("")
# compatibility hack for the eigensolver
rmm = RMM_DIIS()
rmm.niter = 2
# setup parameters # setup parameters
args = {'h': h, args = {'h': h,
'nbands': -20, 'nbands': -20,
'occupations': FermiDirac(0.2), 'occupations': FermiDirac(0.2),
'kpts': kpts, 'kpts': kpts,
'xc': 'PBE', 'xc': 'PBE',
'mixer': Mixer(0.1, 5, 100), 'mixer': Mixer(0.15, 3, 100),
'eigensolver': rmm, 'eigensolver': 'rmm-diis',
'convergence': convergence,
'maxiter': maxiter, 'maxiter': maxiter,
'parallel': parallel, # 'txt': '-',
'txt': txt} 'txt': txt,
}
if use_cuda: if use_cuda:
args['cuda'] = True args['cuda'] = True
try:
args['parallel'] = parallel
except: pass
# setup the system # setup the system
atoms = FaceCenteredCubic(directions=[[1,-1,0], [1,1,-2], [1,1,1]], atoms = FaceCenteredCubic(directions=[[1,-1,0], [1,1,-2], [1,1,1]],
......
...@@ -33,9 +33,15 @@ z = int(2 * radius / 5.43) + 1 ...@@ -33,9 +33,15 @@ z = int(2 * radius / 5.43) + 1
# other parameters # other parameters
h = 0.18 h = 0.18
txt = 'output.txt' txt = 'output.txt'
maxiter = 24 maxiter = 40
bands_per_atom = 2.15 bands_per_atom = 2.15
parallel = {'sl_default': (8,8,64)} parallel = {'sl_default': (8,8,64)}
convergence = {'energy': 0.01, # eV / electron
'density': 1.0e-3,
'eigenstates': 1.0e-5, # eV^2 / electron
'bands': 'occupied',
'forces': float('inf') # eV / Ang Max
}
# build a spherical cluster in vacuum # build a spherical cluster in vacuum
atoms = bulk('Si', cubic=True) atoms = bulk('Si', cubic=True)
...@@ -81,8 +87,9 @@ args = {'gpts': gpts, ...@@ -81,8 +87,9 @@ args = {'gpts': gpts,
'nbands': nbands, 'nbands': nbands,
'occupations': FermiDirac(0.05), 'occupations': FermiDirac(0.05),
'xc': 'LDA', 'xc': 'LDA',
'mixer': Mixer(0.1, 5, 100), 'mixer': Mixer(0.02, 10, 100),
'eigensolver': RMM_DIIS(blocksize=20), 'eigensolver': RMM_DIIS(blocksize=20),
'convergence': convergence,
'maxiter': maxiter, 'maxiter': maxiter,
'parallel': parallel, 'parallel': parallel,
'txt': txt} 'txt': txt}
......
...@@ -2,6 +2,9 @@ ...@@ -2,6 +2,9 @@
These instructions are in addition to the brief instructions in [README.md](../README.md). These instructions are in addition to the brief instructions in [README.md](../README.md).
They cover versions 20.1.0, 20.10.0 and 21.1.0 of GPAW. The distutils-based versions
prior to 20.1.0 are no longer supported by the benchmark suite.
## Detailed dependency list ## Detailed dependency list
### Libraries and Python interpreter ### Libraries and Python interpreter
......