]> https://gitweb.dealii.org/ - dealii.git/commitdiff
MatrixFree: Only set up the inner faces when so requested 15381/head
authorMartin Kronbichler <martin.kronbichler@uni-a.de>
Mon, 19 Jun 2023 17:06:05 +0000 (19:06 +0200)
committerMartin Kronbichler <martin.kronbichler@uni-a.de>
Mon, 19 Jun 2023 17:06:05 +0000 (19:06 +0200)
doc/news/changes/incompatibilities/20230619Kronbichler [new file with mode: 0644]
include/deal.II/matrix_free/matrix_free.templates.h

diff --git a/doc/news/changes/incompatibilities/20230619Kronbichler b/doc/news/changes/incompatibilities/20230619Kronbichler
new file mode 100644 (file)
index 0000000..57a57cd
--- /dev/null
@@ -0,0 +1,9 @@
+MatrixFree::reinit() would always set up the data structures for inner faces,
+also in case only
+MatrixFree::AdditionalData::mapping_updates_flags_boundary_faces was set. As
+this can lead to considerably higher memory consumption, the inner faces are
+now only set up when requested, increasing efficiency. When inner faces are
+desired, make sure to set
+MatrixFree::AdditionalData::mapping_updates_flags_inner_faces.
+<br>
+(Martin Kronbichler, 2023/06/19)
index 4f6614450677ea9f53c99c1a3a9e99bc04fae45a..7b458add7b91c154ef70d5c730bac5af3530b6d8 100644 (file)
@@ -1969,12 +1969,13 @@ MatrixFree<dim, Number, VectorizedArrayType>::initialize_indices(
                     true);
         }
 
-      internal::MatrixFreeFunctions::collect_faces_vectorization(
-        face_setup.inner_faces,
-        hard_vectorization_boundary,
-        task_info.face_partition_data,
-        face_info.faces,
-        dof_info[0].cell_active_fe_index);
+      if (additional_data.mapping_update_flags_inner_faces != update_default)
+        internal::MatrixFreeFunctions::collect_faces_vectorization(
+          face_setup.inner_faces,
+          hard_vectorization_boundary,
+          task_info.face_partition_data,
+          face_info.faces,
+          dof_info[0].cell_active_fe_index);
 
       // on boundary faces, we must also respect the vectorization boundary of
       // the inner faces because we might have dependencies on ghosts of

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.