>>> I don't think that the (serial) grid itself is the decisive thing in
>>> my application.  (I watched the memory consumption, and it remains
>>> small during the grid creation procedure and increases drastically
>>> when the systems are created and initialized.)
>> 
>> Keep in mind, the serial mesh isn't the only thing that goes on the
>> SerialMesh.  We store our degree of freedom indexing on the Node and
>> Elem objects themselves, and so on a SerialMesh those don't scale well
>> either.  And like the current_local_solution, those get allocated and
>> initialized during system initialization.
> 
> Okay, I didn't know that.

The memory usage spike is almost certainly happening when the degree of
freedom indices are allocated and stored in the DofObject.  We've whittled
down the memory usage of that class a few times over the years, and I owe it
one more major refactoring to try and reduce memory consumption.  John and I
were talking about this a little while back...  Right now we essentially
build a 2D matrix with variable row length to store the dof index data, we
should instead pack it into a contiguous array.

-Ben



------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to