From 6815f8248eba599e2944529ede5565cf8d50c09e Mon Sep 17 00:00:00 2001 From: Marc Fehling Date: Wed, 13 Oct 2021 14:21:09 -0600 Subject: [PATCH] Do not communicate vertices automatically to p4est in debug mode. --- .../changes/incompatibilities/20211013Fehling | 7 +++++++ include/deal.II/distributed/tria.h | 15 ++++++++------- source/distributed/tria.cc | 7 ------- 3 files changed, 15 insertions(+), 14 deletions(-) create mode 100644 doc/news/changes/incompatibilities/20211013Fehling diff --git a/doc/news/changes/incompatibilities/20211013Fehling b/doc/news/changes/incompatibilities/20211013Fehling new file mode 100644 index 0000000000..cf0c5e25b2 --- /dev/null +++ b/doc/news/changes/incompatibilities/20211013Fehling @@ -0,0 +1,7 @@ +Changed: For parallel::distributed::Triangulation, vertices will no longer +be communicated automatically to p4est in debug mode. Please set the +corresponding flag +parallel::distributed::Triangulation::Settings::communicate_vertices_to_p4est +while constructing your triangulation object. +
+(Marc Fehling, 2021/10/13) diff --git a/include/deal.II/distributed/tria.h b/include/deal.II/distributed/tria.h index dd4f34e903..24e7b8d2a5 100644 --- a/include/deal.II/distributed/tria.h +++ b/include/deal.II/distributed/tria.h @@ -325,11 +325,10 @@ namespace parallel */ no_automatic_repartitioning = 0x4, /** - * Setting this flag will communicate vertices to p4est. In debug mode, - * the vertices will always be communicated. This way one can - * use the 'find_point_owner_rank()' to find the MPI rank of the active - * cell that owns an arbitrary point in case all attached manifolds are - * flat. + * Setting this flag will communicate vertices to p4est. This way one + * can use the 'find_point_owner_rank()' to find the MPI rank of the + * active cell that owns an arbitrary point in case all attached + * manifolds are flat. */ communicate_vertices_to_p4est = 0x8 }; @@ -394,7 +393,7 @@ namespace parallel is_multilevel_hierarchy_constructed() const override; /** - * Return if vertices will be communicated to p4est in release mode. + * Return if vertices will be communicated to p4est. */ bool are_vertices_communicated_to_p4est() const; @@ -886,7 +885,9 @@ namespace parallel { default_setting = 0x0, mesh_reconstruction_after_repartitioning = 0x1, - construct_multigrid_hierarchy = 0x2 + construct_multigrid_hierarchy = 0x2, + no_automatic_repartitioning = 0x4, + communicate_vertices_to_p4est = 0x8 }; /** diff --git a/source/distributed/tria.cc b/source/distributed/tria.cc index e53164f288..069a0d9f44 100644 --- a/source/distributed/tria.cc +++ b/source/distributed/tria.cc @@ -1705,14 +1705,7 @@ namespace parallel Triangulation::limit_level_difference_at_vertices) : smooth_grid, false) -# ifdef DEBUG - // Always communicate vertices to p4est in debug mode - , settings( - static_cast(settings | communicate_vertices_to_p4est)) -# else , settings(settings) -# endif - , triangulation_has_content(false) , connectivity(nullptr) , parallel_forest(nullptr) -- 2.39.5