Memory Issues
Introduction
When running large calculations (or when running on a machine with
a small amount of memory available) You may get memory allocation
errors.
Depending on the point in the code where the failure occurs,
the message may be rather different, and the best course of
action could be different.
Something like this:
**** error code -1 from mndo97 ******
...hybrid.calc/mndo/hybrid.calc/================= Tstep: 0.0 Ttot: 487.4 ==
...mndo/hybrid.calc/mndo/======================== Tstep: 0.2 Ttot: 487.6 ==
...mndo/hybrid.calc/mndo/[mndo97]================ Tstep: 0.0 Ttot: 487.6 ==
...mndo/hybrid.calc/mndo/[mndo97 exit -1]======== Tstep: 0.0 Ttot: 487.6 ==
May happen if the operating system cannot start a program, in
this case MNDO.
DL_POLY
Memory is dynamically allocated. Most
of the settings must be left unchanged, but you can vary
The mxlist setting if you are using a non-periodic system
using the mxlist= parameter.
This controls the neighbour list length (maximum number
of entries per atom). If you use a small cutoff you can
therefore get away with a a smaller value here.
If the neighbour list space is too small you will see something like
the following:
mxlist must be >= 1381
DL_POLY terminated due to error 110
error - neighbour list array too small
** EXITCOMMS **
Remember that the mxlist requirement will change during a run,
so to be safe some extra memory should be allocated.
GAMESS-UK
Dynamically allocated, using memory= argument to GAMESS-UK
interface.
HDLCOpt and newscf
The memory error messages from HDLCOpt look like this:
'Insufficiant room on stack'
and
'Insufficiant space on heap'
The memory is statically allocated, Controlled by matrix.fh in
chemsh/src/quasi/matrix.fh.
Note that when the parallel code is compiled with
the GAMESS-UK code linked in, and the GAMESS-UK option
newscf is used, the file chemsh/GAMESS-UK/newscf/matrix.fh
must have a consistent value, since the same stack/heap is used
by the newscf module on gamess.
The memory requirements of hdlcopt can be reduced by specifying
the memory parameter.
|