Help with memory problems
DIRAC will allocate the following memory segments:
Static allocation (approx. 130 MB; you can verify it using “make info”)
WORK array for F77 “dynamic” allocation (specified by
./pam --mb
)Additional F90 dynamic allocations (depends on the calculation)
MEMGET errors
They look like this:
--- SEVERE ERROR, PROGRAM WILL BE ABORTED ---
Date and time (Linux) : Fri Nov 26 10:48:19 2010
MEMGET ERROR, insufficient work space in memory
This means that you need to increase the WORK array (increase --mb
).
MEMCHK errors
They look like this:
MEMCHK ERROR, not a valid memget id in work(kfree-1)
Text from calling routine : PSIDHF.DHFSCF (called from MEMREL)
KFIRST,KFREE,IALLOC = 1 2 1
found memory check : 0
expected : 1234567890
This means that you have found a bug in the code. Please contact the developers.
Other memory allocation errors
If you see a error message about memory problems in the queuing system output (and not in the DIRAC output) it typically means that there is not enough memory for F90 dynamic allocations.
You need to increase the memory limit that you specify to the queuing system or
perhaps decrease --mb
(if possible).