On Wed, Mar 10, 2010 at 9:29 PM, Brett van de Sande <bvds@asu.edu> wrote:
4.  If I run the server with the above changes, it appears that
   garbage collection is working as desired:  garbage collection occurs
   every 3 minus (generation 2), doesn't use too much cpu, and seems to
   be recovering the memory.  However, after about a half hour, I get a
   heap exhausted error.   So, I tried to increase the heap size:
       (def!constant dynamic-space-end         #x3ffff000)
   in src/compiler/x86/parms.lisp (to meet up with bottom of shared libs)
   This gives 922742784 bytes of heap space, instead of 500K
   However the heap exhaustion error still occurs, although a bit later:
       Heap exhausted during allocation: 234094592 bytes available,
       268435464 requested.

This doesn't sound like a crash during gc to me, but an attempt to allocate a 256MB object (probably an array) when less heap space is available. Does that ring any bells? If your code shouldn't be allocating single arrays that are that large, can you get a backtrace at this point and see why one is being allocated?

Juho Snellman