Reference documentation for deal.II version 9.2.0
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Public Attributes | List of all members
CUDAWrappers::MatrixFree< dim, Number >::Data Struct Reference

#include <deal.II/matrix_free/cuda_matrix_free.h>

Public Attributes

point_typeq_points
 
types::global_dof_indexlocal_to_global
 
Number * inv_jacobian
 
Number * JxW
 
unsigned int n_cells
 
unsigned int padding_length
 
unsigned int row_start
 
unsigned intconstraint_mask
 
bool use_coloring
 

Detailed Description

template<int dim, typename Number = double>
struct CUDAWrappers::MatrixFree< dim, Number >::Data

Structure which is passed to the kernel. It is used to pass all the necessary information from the CPU to the GPU.

Definition at line 163 of file cuda_matrix_free.h.

Member Data Documentation

◆ q_points

template<int dim, typename Number = double>
point_type* CUDAWrappers::MatrixFree< dim, Number >::Data::q_points

Pointer to the quadrature points.

Definition at line 168 of file cuda_matrix_free.h.

◆ local_to_global

template<int dim, typename Number = double>
types::global_dof_index* CUDAWrappers::MatrixFree< dim, Number >::Data::local_to_global

Map the position in the local vector to the position in the global vector.

Definition at line 174 of file cuda_matrix_free.h.

◆ inv_jacobian

template<int dim, typename Number = double>
Number* CUDAWrappers::MatrixFree< dim, Number >::Data::inv_jacobian

Pointer to the inverse Jacobian.

Definition at line 179 of file cuda_matrix_free.h.

◆ JxW

template<int dim, typename Number = double>
Number* CUDAWrappers::MatrixFree< dim, Number >::Data::JxW

Pointer to the Jacobian times the weights.

Definition at line 184 of file cuda_matrix_free.h.

◆ n_cells

template<int dim, typename Number = double>
unsigned int CUDAWrappers::MatrixFree< dim, Number >::Data::n_cells

Number of cells.

Definition at line 189 of file cuda_matrix_free.h.

◆ padding_length

template<int dim, typename Number = double>
unsigned int CUDAWrappers::MatrixFree< dim, Number >::Data::padding_length

Length of the padding.

Definition at line 194 of file cuda_matrix_free.h.

◆ row_start

template<int dim, typename Number = double>
unsigned int CUDAWrappers::MatrixFree< dim, Number >::Data::row_start

Row start (including padding).

Definition at line 199 of file cuda_matrix_free.h.

◆ constraint_mask

template<int dim, typename Number = double>
unsigned int* CUDAWrappers::MatrixFree< dim, Number >::Data::constraint_mask

Mask deciding where constraints are set on a given cell.

Definition at line 204 of file cuda_matrix_free.h.

◆ use_coloring

template<int dim, typename Number = double>
bool CUDAWrappers::MatrixFree< dim, Number >::Data::use_coloring

If true, use graph coloring has been used and we can simply add into the destingation vector. Otherwise, use atomic operations.

Definition at line 210 of file cuda_matrix_free.h.


The documentation for this struct was generated from the following file: