>> I've got a good guess as to where the memory spikes are occuring:
>> check out __libmesh_petsc_snes_residual() in petsc_nonlinear_solver.C.
>> Is that X_local a serial vector?
> 
> Good catch Roy... that's along the lines of what I was thinking.
> 
>> I think I noticed this problem and tried to avoid it in
>> petsc_diff_solver.C; you might cut and paste some of that code into
>> Ben's solver to see if using my "swap vectors, System::update"
>> localization works any better.
> 
> I will try that.  Thanks!

Please advise of the outcome.

Big picture, the concept of serialized vectors needs to be wholesale
replaced with vectors+ghost padding.  PETSc offers a way to do this, and
Trilinos has something similar.

What I think is needed is that we implement this functionality in
DistributedVector<> and then derive PetscVector<>/EpetraVector<> from this
class.  

-Ben


-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Libmesh-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to