problem of memory in reaxff

Hi,
I am trying to simulate 70000 atoms using reaxff but its giving memory problem… but at 50000 atoms its working fine… can somebody help…thanks in advance

OUTPUT:

Reading data file …
orthogonal box = (-1500 -1500 -50) to (1500 1500 50)
2 by 2 by 1 MPI processor grid
61068 atoms
6 atoms in group inner
1710 atoms in group outer
59358 atoms in group mid
Setting up run …
ERROR on proc 0: Failed to allocate 610680 bytes for array dump:bufsort (memory.cpp:45)

Hi,
I am trying to simulate 70000 atoms using reaxff but its giving memory
problem.. but at 50000 atoms its working fine.. can somebody help..thanks in
advance

the error message tells you that there is not enough memory
(or rather address space) available. this is not a LAMMPS
problem, but it just reports that the operating system tells
LAMMPS that it cannot reserve more memory. there can be
a variety of reasons.

axel.

How much memory does LAMMPS say it is using (printed at setup time)
for the 50K atom problem, and are you running on 1 proc?

Steve

Dear Sir,
I am running on 4 processors and individual processor is taking 43 Mb for 50K atoms.
Reading data file …
orthogonal box = (-1500 -1500 -50) to (1500 1500 50)
2 by 2 by 1 MPI processor grid
51170 atoms
6 atoms in group inner
1576 atoms in group outer
49594 atoms in group mid
Setting up run …
Memory usage per processor = 43.8718 Mbytes

Dear Sir,
I am running on 4 processors and individual processor is taking 43 Mb for
50K atoms.

Reading data file ...
  orthogonal box = (-1500 -1500 -50) to (1500 1500 50)
  2 by 2 by 1 MPI processor grid
  51170 atoms

6 atoms in group inner
1576 atoms in group outer
49594 atoms in group mid
Setting up run ...
Memory usage per processor = 43.8718 Mbytes

i don't think that this is very reliably information.
reax/c and reax (which one do you use?)
seem to allocate a lot of memory that is not
accounted for in the usual LAMMPS memory
accounting.

what is more important would be:
do you run a 32-bit or 64-bit OS?

how large is the address space required
by each process (if you run "top" is is
the column labeled "VIRT")?

what are your ulimit settings (ulimit -a)?

axel.

Hi Sandeep,

It seems your run failed to allocate for array dump:bufsort, which is
an array from dump instead of reax or reax/c.

Are you using dump_modify sort? Will it help if you do not sort dump
files? I can run reax/c with ~100000 atoms on my 8G laptop. Try
using reax/c, which allocates memory more efficiently.

Also, the memory usage reported from reax and reax/c are not accurate.

Best,
Ray

Thanks Ray Shan and everybody…The problem is solved now…I was using

dump 6 all xyz 100 dumpnvt1.xyz
run 1000000

100 steps in dump was too small to run 1000000 steps for 60-70K atoms… now i changed dump file to
dump 6 all xyz 1000 dumpnvt1.xyz and code is running smothly now.

You are welcome. But the frequency to write dump files should not
matter; it should be other settings, such as dump_modify sort or
pair_style reax/c or others, that you had changed that had an effect.

Best,
Ray