Reference documentation for deal.II version Git a5ed68a04a 2019-09-22 06:50:58 -0600
\(\newcommand{\dealcoloneq}{\mathrel{\vcenter{:}}=}\)
Public Attributes | List of all members
CUDAWrappers::MatrixFree< dim, Number >::AdditionalData Struct Reference

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

Public Attributes

unsigned int n_colors
 
ParallelizationScheme parallelization_scheme
 
UpdateFlags mapping_update_flags
 
bool use_coloring
 

Detailed Description

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

Standardized data struct to pipe additional data to MatrixFree.

Definition at line 99 of file cuda_matrix_free.h.

Member Data Documentation

◆ n_colors

template<int dim, typename Number = double>
unsigned int CUDAWrappers::MatrixFree< dim, Number >::AdditionalData::n_colors

Number of colors created by the graph coloring algorithm.

Definition at line 114 of file cuda_matrix_free.h.

◆ parallelization_scheme

template<int dim, typename Number = double>
ParallelizationScheme CUDAWrappers::MatrixFree< dim, Number >::AdditionalData::parallelization_scheme

Parallelization scheme used, parallelization over degrees of freedom or over cells.

Definition at line 119 of file cuda_matrix_free.h.

◆ mapping_update_flags

template<int dim, typename Number = double>
UpdateFlags CUDAWrappers::MatrixFree< dim, Number >::AdditionalData::mapping_update_flags

This flag is used to determine which quantities should be cached. This class can cache data needed for gradient computations (inverse Jacobians), Jacobian determinants (JxW), quadrature points as well as data for Hessians (derivative of Jacobians). By default, only data for gradients and Jacobian determinants times quadrature weights, JxW, are cached. If quadrature points of second derivatives are needed, they must be specified by this field.

Definition at line 129 of file cuda_matrix_free.h.

◆ use_coloring

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

If true, use graph coloring. Otherwise, use atomic operations. Graph coloring ensures bitwise reproducibility but is slower on Pascal and newer architectures.

Definition at line 136 of file cuda_matrix_free.h.


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