suggestions for DSMC particle storage needed



Hello group.

I am writing a DSMC (Direct Simulation Monte Carlo) code in f95 using
ifort. The code will be launching particles, following them, and they
will eventually be lost.

I was thinking of implementing a linked list for particle storage,
allocating and de-allocating as needed. I am aware of discussions
regarding the inefficiencies in memory allocation, and see below
regarding that.

I am curious however, whether the de-allocation of particles is going
to leave gaps of unused memory in he physical memory, and that my
memory requiriements will continue to grow during the simulation even
though I am releasing it.

I think my question translates into: what is a good memory management
scheme for Monte-Carlo type simulations where I will have a decent
turn-over of particles? I am very new to this area, and pointers to
literature will be appreciated.

Regarding the inefficies of linked lists, if that were an issue for me,
I was thinking of having an "internal memory manager" -- much simpler
than it sounds. Basically, I would allocated memory for, say 1000
particles at a time. That way I would have a heap of 1000 pointers,
and use that until I run out of them. When I do run out of them, I go
back again and ask for 1000 more. I really have not thought this
through, nor have implemented it. Actually I am fairly new to f95 (I'
ve been using IDL), and my understanding of pointers may not be 100%
accurate.

Many thanks,

Mirko

.



Relevant Pages

  • Re: [OT] Re: wchar_t
    ... The estimates for the number of particles in the universe range from ... To give you an idea of how big that is: if every single atom comprising the planet Earth were used to store a byte, the resulting memory would have a capacity of a paultry 10^50 bytes. ... But the question was about a practical upper limit for *physical addresses*, not *machine words*, which may well grow larger as more and more memory is fetched by the CPU every cycle. ...
    (comp.lang.c)
  • Re: reducing the size of an array w/o using twice the memory ?
    ... application I'm working on is limited by the number of particles that ... version so I'm stuck with shared memory machines. ... integer:: nold, ierr ... of pointers in Fortran to know if this solution is great. ...
    (comp.lang.fortran)
  • Re: suggestions for DSMC particle storage needed
    ... The code will be launching particles, following them, and they will eventually be lost. ... allocating and de-allocating as needed. ... to leave gaps of unused memory in he physical memory, and that my memory requiriements will continue to grow during the simulation even though I am releasing it. ... Regarding the inefficies of linked lists, if that were an issue for me, ...
    (comp.lang.fortran)
  • Re: Particle accelerators for sale?
    ... > decided to refresh my memory about partile physics. ... I decided to view light as a stream of particles ...
    (sci.physics.research)
  • Re: Simulations of the formation, evolution and clustering of galaxies and quasars.
    ... NV> of art in computer simulations of the Universe including cold dark ... Note that this is a *simulation*, ... and characteristics of any one of their test particles. ... NV> The same with the filaments of dark matter. ...
    (sci.astro.research)