[CPMD-list] "MEMORY| ALLOCATION FAILED" error message

Axel Kohlmeyer axel.kohlmeyer at theochem.ruhr-uni-bochum.de
Fri Mar 4 20:53:23 CET 2005


On Fri, 4 Mar 2005, Robert Williams wrote:


hi guys,

this is just to sum up some 'intelligence' i have gathered so far:

- there is a known problem with the intel version 8.x compiler
  producing exectuables, that need much more stack space.
  this is solved by using 'unlimit' (in tcsh) or 'ulimit -s unlimited'
  (in bash/zsh). this is a legacy of the fortran frontend being 
  derived from the good ole DEC/Compaq/... compilers. to avoid
  having each user put this into their login scrips, you may ask
  your system administrator to modify the /etc/security/limits.conf
  file to contain (e.g.)

*               soft    stack           327680
*               hard    stack           1048576

  this can also be done on a per-user (or better per-group basis).

- on a 32-bit machine malloc returns memory addresses that are
  32-bit _unsigned_ integers or 0 if the malloc fails.
  in the file memory.F the respective test is done for <= 0,
  unless you are on a HP machine.

  modifying the code around line 105 of memory.F to

#if defined(__HP) || defined(__PGI) || defined(LINUX_IFC) || defined(__alpha)
      IF(IP_XM.EQ.0) THEN
        IERROR=1
      ENDIF
#else

  avoids that problem.

- there are some quirky things on fedora (or redhat EL3+) especially
  with the support for 32-bit development on x86_64 (i.e. athlon64/FX 
  and opteron). i have made a few tests, also with mandrake and suse
  and found, that for some strange reason those machines worked best
  with suse. since every distribution uses an 'improved' kernel combined
  with bob's experiences using a stock kernel, i can only assume, that
  one of the 'improvements' in the fedora kernels is biting back.

- using the intel MKL, as it uses threads, might complicate 
  the situation since one of the major differences between 
  older and newer distributions is the threads support.

from my experience, i have no problems compiling and running intel 8.x
compiled cpmd binaries on redhat 7.x, redhat 9, suse 9.x, mandrake 10,
when using ATLAS library binaries that were compiled on redhat 7.x (mind
you the intel compilers and libraries are built on redhat 7.3).
for suse and mandrake this also applies to the 32-bit version on 
x86_64 machines.

please remind me, if i am missing something.

regards,
	axel.

[...]

-- 
=======================================================================
Dr. Axel Kohlmeyer   e-mail: axel.kohlmeyer at theochem.ruhr-uni-bochum.de
Lehrstuhl fuer Theoretische Chemie          Phone: ++49 (0)234/32-26673
Ruhr-Universitaet Bochum - NC 03/53         Fax:   ++49 (0)234/32-14045
D-44780 Bochum  http://www.theochem.ruhr-uni-bochum.de/~axel.kohlmeyer/
=======================================================================
If you make something idiot-proof, the universe creates a better idiot.




More information about the CPMD-list mailing list