Fixed: deal.II has been updated to support the new OneAPI api interface
-introduced by the Intel Threading Building Blocks Library.
+introduced by the Intel Threading Building Blocks Library. Note that the
+threading support of the matrix-free backend will be disabled in this case:
+For now, the MatrixFree::AdditionalData::tasks_parallel_scheme control has
+no effect and simply defaults to the serial loop.
<br>
(Wolfgang Bangerth, Matthias Maier, 2022/01/06)
#include <fstream>
+//
+// TBB with oneAPI API has deprecated and removed the
+// <code>tbb::tasks</code> backend. With this it is no longer possible to
+// compile the following code that builds a directed acyclic graph (DAG) of
+// (thread parallel) tasks without a major porting effort. It turned out
+// that such a dynamic handling of dependencies and structures is not as
+// competitive as initially assumed. Consequently, this part of the matrix
+// free infrastructure has seen less attention than the rest over the last
+// years and is (presumably) not used that often.
+//
+// In case of detected oneAPI backend we simply disable threading in the
+// matrix free backend for now.
+//
+// Matthias Maier, Martin Kronbichler, 2021
+//
+#ifdef DEAL_II_TBB_WITH_ONEAPI
+# undef DEAL_II_WITH_TBB
+#endif
DEAL_II_NAMESPACE_OPEN
DEAL_II_NAMESPACE_CLOSE
+#ifdef DEAL_II_TBB_WITH_ONEAPI
+# define DEAL_II_WITH_TBB
+#endif
+
#endif
#include <iostream>
#include <set>
+//
+// TBB with oneAPI API has deprecated and removed the
+// <code>tbb::tasks</code> backend. With this it is no longer possible to
+// compile the following code that builds a directed acyclic graph (DAG) of
+// (thread parallel) tasks without a major porting effort. It turned out
+// that such a dynamic handling of dependencies and structures is not as
+// competitive as initially assumed. Consequently, this part of the matrix
+// free infrastructure has seen less attention than the rest over the last
+// years and is (presumably) not used that often.
+//
+// In case of detected oneAPI backend we simply disable threading in the
+// matrix free backend for now.
+//
+// Matthias Maier, Martin Kronbichler, 2021
+//
+#ifdef DEAL_II_TBB_WITH_ONEAPI
+# undef DEAL_II_WITH_TBB
+#endif
+
DEAL_II_NAMESPACE_OPEN