Hello all, Following up from a previous post <https://groups.google.com/forum/#!searchin/dealii/CUDA%7Csort:date/dealii/Fby9uclgSbU/luZlePmgCgAJ> about where the GPU capabilities are, I've been going through the CUDA matrix-free matrix-vector product tests as Bruno suggested. For the most part I've been able to make sense of it and have found parallels between what is going on there versus step-48.
The one area that I don't really understand for matrix_free_matrix_vector_01.cu is how information flows into the HelmholtzOperator <https://github.com/dealii/dealii/blob/2f12a074e4645b4cff01335b773a7f88b83051dc/tests/cuda/matrix_vector_mf.h>::operator() method. Inside the vmult method in MatrixFreeTest a HelmholtzOperator object is created and then it is passed into CUDAWrapper::MatrixFree cell_loop method along with two CUDAVectors. However, when I look at the HelmholtzOperator::operator() definition it takes CUDAWrappers::MatrixFree::Data * and CUDAWrappers::SharedData * types as inputs. Do the CUDAWrapper::MatrixFree internals take care of building objects with those types in a way that I can just ignore? I thought from the previous discussion that the user had to package what they needed into CUDAWrappers::MatrixFree::Data * and CUDAWrappers::SharedData * objects but maybe I misunderstood it. Obviously it would be great if this happened in the background. On a related topic, I can see that the signature for HelmholtzOperator::operator() is notably different than SineGordonOperation:: local_apply in step-48. Where in the documentation should I be looking for the requirements for the functor passed into CUDAWrapper::MatrixFree::cell_loop? I'm reaching a dead end at the documentation entry for CUDAWrapper::MatrixFree::cell_loop. I can just copy the form from HelmholtzOperator::operator(), but I'm worried that I could get myself into trouble if I don't quite understand it. Thanks in advance, Steve DeWitt -- The deal.II project is located at http://www.dealii.org/ For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en --- You received this message because you are subscribed to the Google Groups "deal.II User Group" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
