]> https://gitweb.dealii.org/ - dealii.git/commit
reduce number of prepare_coarsening_and_refinement() calls
authorTimo Heister <timo.heister@gmail.com>
Mon, 28 Sep 2020 19:14:52 +0000 (15:14 -0400)
committerTimo Heister <timo.heister@gmail.com>
Mon, 5 Apr 2021 14:50:40 +0000 (10:50 -0400)
commitaddb8df58df4199dc054f675465d9495e3324908
tree2c907de92546862ac8bdb1b4d374f280164f24cb
parent09b93afd2f490bb6c517fe4e20f1e02108837905
reduce number of prepare_coarsening_and_refinement() calls

I noticed that we call prepare_coarsening_and_refinement() many times
when using a p::d::Triangulation. Many of these are certainly
unnecessary:

1. distributed tria for mesh_reconstruction_after_repartitioning. This
is used to remove all refinement and smoothing will be called inside the
execute...() call below. No need to call our more expensive version.

2. serial execute_coarsening_and_refinement() should not call the
derived version, which in turn calls the serial version.

For the test tests/distributed_grids/refine_periodic_01:
Before: 154 sequential, 154 parallel
After: 126 sequential, 53 parallel

fixup
source/distributed/tria.cc
source/grid/tria.cc

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.