Dear deal.II developers,
I have tried to write my program for the solution of the fully coupled
Stokes-Poisson-Nernst-Planck system with trilinos. Therefore I have adapted
example step-32. So far everything is ok and for small problems (~200,000
dofs) the code works well. But it was impossible to run my code for 1.5
million dofs, because of the huge memory consumption (I am running the
program on a node with 8 processors and 32 GB of memory). I have the
following snippet of code in my program during the setup-dof function:
{
Amg_preconditioner.reset ();
Mp_preconditioner.reset ();
stokes_matrix.clear ();
stokes_matrix_copy.clear ();
BlockSparsityPattern stokes_sparsity_pattern (2,2);
BlockCompressedSetSparsityPattern csp (2,2);
csp.block(0,0).reinit (n_u, n_u);
csp.block(0,1).reinit (n_u, n_p);
csp.block(1,0).reinit (n_p, n_u);
csp.block(1,1).reinit (n_p, n_p);
csp.collect_sizes ();
Table<2,DoFTools::Coupling> coupling (dim+1, dim+1);
for (unsigned int c=0; c<dim+1; ++c)
for (unsigned int d=0; d<dim+1; ++d){
coupling[c][d] = DoFTools::always;
}
DoFTools::make_sparsity_pattern (stokes_dof_handler, coupling, csp);
stokes_constraints.condense (csp);
stokes_sparsity_pattern.copy_from (csp);
stokes_matrix.reinit (stokes_partitioner,
stokes_sparsity_pattern);
stokes_matrix_copy.reinit (stokes_partitioner,
stokes_sparsity_pattern);
}
I found out that the memory increases during the call
DoFTools::make_sparsity_pattern (stokes_dof_handler, coupling, csp);
But when I check the memory consumption of the dof_handler it seems to
remain the same. So which object needs so much memory (because the memory of
csp should be released at the end of the function)?
Is there a possibility to circumvent this huge memory consumption, so that I
have got a chance to run my program for larger problems?
Thanks a lot in advance.
Florian
----------------------------------------------------------------------------
-
Dipl.-Math. techn. Florian Keller
Institut für Mechanische Verfahrenstechnik und Mechanik, Universität
Karlsruhe (TH)
Straße am Forum 8, Geb. 30.70, D-76131 Karlsruhe
Tel.: +49 (0)721 608 - 2411
Fax: +49 721 608-2403
E-Mail: [EMAIL PROTECTED]
_______________________________________________