From b7f4fd656c78851dd2e5938120c926da6e1985ca Mon Sep 17 00:00:00 2001 From: Daniel Arndt Date: Fri, 10 May 2019 18:57:21 -0400 Subject: [PATCH] Results and changelog entry --- doc/news/changes/major/20190510ArndtTurcksin | 5 ++++ examples/step-64/doc/results.dox | 28 ++++++++++++++++++++ examples/step-64/step-64.cu | 4 +-- 3 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 doc/news/changes/major/20190510ArndtTurcksin diff --git a/doc/news/changes/major/20190510ArndtTurcksin b/doc/news/changes/major/20190510ArndtTurcksin new file mode 100644 index 0000000000..952df32379 --- /dev/null +++ b/doc/news/changes/major/20190510ArndtTurcksin @@ -0,0 +1,5 @@ +New: Ths step-64 tutorial demonstrates how to use the CUDAWrappers::MatrixFree +framework (possibly with MPI) and discusses the peculiarities of using CUDA +inside deal.II in general. +
+(Daniel Arndt, Bruno Turcksin, 2019/05/10) diff --git a/examples/step-64/doc/results.dox b/examples/step-64/doc/results.dox index efcbca3d94..ca29f9b77b 100644 --- a/examples/step-64/doc/results.dox +++ b/examples/step-64/doc/results.dox @@ -1,5 +1,33 @@

Results

+Since the main purpose of this tutorial is to demonstrate how to use the +CUDAWrappers::MatrixFree interface, we just show the expected output here: +@code +Cycle 0 + Number of active cells: 8 + Number of degrees of freedom: 343 + Solved in 27 iterations. + solution norm: 0.0205439 + +Cycle 1 + Number of active cells: 64 + Number of degrees of freedom: 2197 + Solved in 60 iterations. + solution norm: 0.0205269 + +Cycle 2 + Number of active cells: 512 + Number of degrees of freedom: 15625 + Solved in 114 iterations. + solution norm: 0.0205261 + +Cycle 3 + Number of active cells: 4096 + Number of degrees of freedom: 117649 + Solved in 227 iterations. + solution norm: 0.0205261 +@endcode +

Possible extensions

diff --git a/examples/step-64/step-64.cu b/examples/step-64/step-64.cu index 04453d555d..5b03c3524b 100644 --- a/examples/step-64/step-64.cu +++ b/examples/step-64/step-64.cu @@ -305,7 +305,7 @@ namespace Step64 // that always uses GPU memory storage but doesn't work with MPI. It might // be worth noticing that the communication between different MPI processes // can be improved if the MPI implementation is CUDA-aware and the configure - // flag DEAL_II_WITH_CUDA_AWARE_MPI is enabled. + // flag DEAL_II_MPI_WITH_CUDA_SUPPORT is enabled. // // Here, we also have a finite element vector with CPU storage such that we // can view and display the solution as usual. @@ -425,7 +425,7 @@ namespace Step64 // precondition by the identity, to focus just on the peculiarities of the // CUDAWrappers::MatrixFree framework. Of course, in a real application the // choice of a suitable preconditioner is crucial but we have at least the - // same restructions as in step-37 since matrix entries are computed on the + // same restrictions as in step-37 since matrix entries are computed on the // fly and not stored. template void HelmholtzProblem::solve() -- 2.39.5