https://mooseframework.inl.gov
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
Moose::Kokkos::System Class Reference

The Kokkos base system class. More...

#include <KokkosSystem.h>

Inheritance diagram for Moose::Kokkos::System:
[legend]

Classes

struct  Sparsity
 CSR format sparsity data. More...
 

Public Member Functions

 System (SystemBase &system)
 Constructor. More...
 
 System (const System &src)=default
 Defaulted copy constructor Used by FESystem in mixed FE+FV simulations. More...
 
void sync (const MemcpyType dir)
 Synchronize the active tagged vectors and matrices between host and device. More...
 
void setActiveVariables (const std::set< MooseVariableFieldBase *> &vars)
 Set the active variables. More...
 
void setActiveSolutionTags (const std::set< TagID > &tags)
 Set the active solution tags. More...
 
void setActiveResidualTags (const std::set< TagID > &tags)
 Set the active residual tags. More...
 
void setActiveMatrixTags (const std::set< TagID > &tags)
 Set the active matrix tags. More...
 
void clearActiveVariables ()
 Clear the cached active variables. More...
 
void clearActiveSolutionTags ()
 Clear the cached active solution tags. More...
 
void clearActiveResidualTags ()
 Clear the cached active residual tags. More...
 
void clearActiveMatrixTags ()
 Clear the cached active matrix tags. More...
 
const libMesh::DofMapgetDofMap () const
 Get the libMesh DOF map. More...
 
const Parallel::CommunicatorgetComm () const
 Get the libMesh communicator. More...
 
const Array< Array< dof_id_type > > & getLocalCommList () const
 Get the list of local DOF indices to communicate. More...
 
const Array< Array< dof_id_type > > & getGhostCommList () const
 Get the list of ghost DOF indices to communicate. More...
 
const SparsitygetSparsity () const
 Get the sparisty pattern data. More...
 
KOKKOS_FUNCTION bool isVariableActive (unsigned int var, ContiguousSubdomainID subdomain) const
 Check whether a variable is active on a subdomain. More...
 
KOKKOS_FUNCTION bool isResidualTagActive (TagID tag) const
 Check whether a residual tag is active. More...
 
KOKKOS_FUNCTION bool isMatrixTagActive (TagID tag) const
 Check whether a matrix tag is active. More...
 
KOKKOS_FUNCTION dof_id_type getNumLocalDofs () const
 Get the number of local DOFs. More...
 
KOKKOS_FUNCTION dof_id_type getNumGhostDofs () const
 Get the number of ghost DOFs. More...
 
KOKKOS_FUNCTION dof_id_type getElemLocalDofIndex (ContiguousElementID elem, unsigned int i, unsigned int var) const
 Get the local DOF index of a variable for an element. More...
 
KOKKOS_FUNCTION dof_id_type getElemGlobalDofIndex (ContiguousElementID elem, unsigned int i, unsigned int var) const
 Get the global DOF index of a variable for an element. More...
 
KOKKOS_FUNCTION dof_id_type localToGlobalDofIndex (dof_id_type dof) const
 Get the global DOF index of a local DOF index. More...
 
KOKKOS_FUNCTION VectorgetVector (TagID tag) const
 Get a tagged Kokkos vector. More...
 
KOKKOS_FUNCTION MatrixgetMatrix (TagID tag) const
 Get a tagged Kokkos matrix. More...
 
KOKKOS_FUNCTION RealgetVectorDofValue (const dof_id_type dof, const TagID tag) const
 Get the DOF value of a tagged vector. More...
 
KOKKOS_FUNCTION RealgetMatrixValue (dof_id_type row, dof_id_type col, TagID tag) const
 Get an entry from a tagged matrix. More...
 
PerfGraphperfGraph ()
 Get the PerfGraph. More...
 
KOKKOS_FUNCTION const MeshkokkosMesh () const
 Get the const reference of the Kokkos mesh. More...
 
void sync (const std::set< TagID > &tags, const MemcpyType dir)
 Synchronize the specified tagged vectors between host and device. More...
 
void sync (const std::vector< TagID > &tags, const MemcpyType dir)
 
void sync (const TagID tag, const MemcpyType dir)
 
SystemBasegetSystem ()
 Get the MOOSE system. More...
 
const SystemBasegetSystem () const
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Member Functions

PerfID registerTimedSection (const std::string &section_name, const unsigned int level) const
 Call to register a named section for timing. More...
 
PerfID registerTimedSection (const std::string &section_name, const unsigned int level, const std::string &live_message, const bool print_dots=true) const
 Call to register a named section for timing. More...
 
std::string timedSectionName (const std::string &section_name) const
 

Protected Attributes

SystemBase_system
 Reference of the MOOSE system. More...
 
const MooseMesh_mesh
 Reference of the MOOSE mesh. More...
 
const libMesh::DofMap_dof_map
 Reference of the libMesh DOF map. More...
 
const Parallel::Communicator_comm
 Reference of the libMesh communicator. More...
 
const unsigned int _num_vars
 Number of variables. More...
 
const dof_id_type _num_local_dofs
 Number of local DOFs. More...
 
const dof_id_type _num_ghost_dofs
 Number of ghost DOFs. More...
 
Array< Array2D< dof_id_type > > _local_elem_dof_index
 Local element DOF indices of each variable. More...
 
Array< dof_id_type_local_to_global_dof_index
 Map from local DOF index to global DOF index. More...
 
Array< unsigned int_max_dofs_per_elem
 Maximum number of DOFs per element for each variable. More...
 
Array2D< bool > _var_subdomain_active
 Whether each variable is active on subdomains. More...
 
Array< unsigned int_active_variables
 List of active variable numbers. More...
 
MooseApp_pg_moose_app
 The MooseApp that owns the PerfGraph. More...
 
const std::string _prefix
 A prefix to use for all sections. More...
 
Array< Vector_vectors
 Kokkos vectors and matrices on device. More...
 
Array< Matrix_matrices
 
Array< TagID_active_solution_tags
 List of active tags. More...
 
Array< TagID_active_residual_tags
 
Array< TagID_active_matrix_tags
 
Array< bool > _residual_tag_active
 Flag whether each tag is active. More...
 
Array< bool > _matrix_tag_active
 
Array< Array< dof_id_type > > _local_comm_list
 List of DOFs to send and receive. More...
 
Array< Array< dof_id_type > > _ghost_comm_list
 

Private Member Functions

void setupVariables ()
 Setup variable data. More...
 
void setupDofs ()
 Setup DOF data. More...
 
void setupSparsity ()
 Setup sparsity data. More...
 

Private Attributes

Sparsity _sparsity
 Matrix sparsity pattern data. More...
 

Detailed Description

The Kokkos base system class.

Each system in MOOSE has a corresponding Kokkos base system.

Definition at line 30 of file KokkosSystem.h.

Constructor & Destructor Documentation

◆ System() [1/2]

Moose::Kokkos::System::System ( SystemBase system)

Constructor.

Parameters
systemThe associated MOOSE system

◆ System() [2/2]

Moose::Kokkos::System::System ( const System src)
default

Defaulted copy constructor Used by FESystem in mixed FE+FV simulations.

Member Function Documentation

◆ clearActiveMatrixTags()

void Moose::Kokkos::System::clearActiveMatrixTags ( )
inline

Clear the cached active matrix tags.

Definition at line 118 of file KokkosSystem.h.

119  {
121  _matrix_tag_active = false;
122  }
Array< TagID > _active_matrix_tags
Definition: KokkosSystem.h:352
void destroy()
Free all data and reset.
Definition: KokkosArray.h:896
Array< bool > _matrix_tag_active
Definition: KokkosSystem.h:360

◆ clearActiveResidualTags()

void Moose::Kokkos::System::clearActiveResidualTags ( )
inline

Clear the cached active residual tags.

Definition at line 109 of file KokkosSystem.h.

110  {
112  _residual_tag_active = false;
113  }
Array< bool > _residual_tag_active
Flag whether each tag is active.
Definition: KokkosSystem.h:359
Array< TagID > _active_residual_tags
Definition: KokkosSystem.h:351
void destroy()
Free all data and reset.
Definition: KokkosArray.h:896

◆ clearActiveSolutionTags()

void Moose::Kokkos::System::clearActiveSolutionTags ( )
inline

Clear the cached active solution tags.

Definition at line 104 of file KokkosSystem.h.

void destroy()
Free all data and reset.
Definition: KokkosArray.h:896
Array< TagID > _active_solution_tags
List of active tags.
Definition: KokkosSystem.h:350

◆ clearActiveVariables()

void Moose::Kokkos::System::clearActiveVariables ( )
inline

Clear the cached active variables.

Definition at line 99 of file KokkosSystem.h.

void destroy()
Free all data and reset.
Definition: KokkosArray.h:896
Array< unsigned int > _active_variables
List of active variable numbers.
Definition: KokkosSystem.h:344

◆ getComm()

const Parallel::Communicator& Moose::Kokkos::System::getComm ( ) const
inline

Get the libMesh communicator.

Returns
The libMesh communicator

Definition at line 143 of file KokkosSystem.h.

143 { return _comm; }
const Parallel::Communicator & _comm
Reference of the libMesh communicator.
Definition: KokkosSystem.h:296

◆ getDofMap()

const libMesh::DofMap& Moose::Kokkos::System::getDofMap ( ) const
inline

Get the libMesh DOF map.

Returns
The libMesh DOF map

Definition at line 137 of file KokkosSystem.h.

137 { return _dof_map; }
const libMesh::DofMap & _dof_map
Reference of the libMesh DOF map.
Definition: KokkosSystem.h:291

◆ getElemGlobalDofIndex()

KOKKOS_FUNCTION dof_id_type Moose::Kokkos::System::getElemGlobalDofIndex ( ContiguousElementID  elem,
unsigned int  i,
unsigned int  var 
) const
inline

Get the global DOF index of a variable for an element.

Parameters
elemThe contiguous element ID
iThe element-local DOF index
varThe variable number
Returns
The global DOF index

Definition at line 221 of file KokkosSystem.h.

224  {
226  }
Array< dof_id_type > _local_to_global_dof_index
Map from local DOF index to global DOF index.
Definition: KokkosSystem.h:329
Array< Array2D< dof_id_type > > _local_elem_dof_index
Local element DOF indices of each variable.
Definition: KokkosSystem.h:324

◆ getElemLocalDofIndex()

KOKKOS_FUNCTION dof_id_type Moose::Kokkos::System::getElemLocalDofIndex ( ContiguousElementID  elem,
unsigned int  i,
unsigned int  var 
) const
inline

Get the local DOF index of a variable for an element.

Parameters
elemThe contiguous element ID
iThe element-local DOF index
varThe variable number
Returns
The local DOF index

Definition at line 207 of file KokkosSystem.h.

Referenced by Moose::Kokkos::FESystem::getVectorQpADGrad(), Moose::Kokkos::FESystem::getVectorQpADGradFace(), Moose::Kokkos::FESystem::getVectorQpADValue(), Moose::Kokkos::FESystem::getVectorQpADValueFace(), Moose::Kokkos::FESystem::getVectorQpGradFace(), Moose::Kokkos::FESystem::getVectorQpValueFace(), Moose::Kokkos::FESystem::getVectorQpVectorGradFace(), and Moose::Kokkos::FESystem::getVectorQpVectorValueFace().

210  {
211  return _local_elem_dof_index[var](i, elem);
212  }
Array< Array2D< dof_id_type > > _local_elem_dof_index
Local element DOF indices of each variable.
Definition: KokkosSystem.h:324

◆ getGhostCommList()

const Array<Array<dof_id_type> >& Moose::Kokkos::System::getGhostCommList ( ) const
inline

Get the list of ghost DOF indices to communicate.

Returns
The list of ghost DOF indices to communicate

Definition at line 155 of file KokkosSystem.h.

155 { return _ghost_comm_list; }
Array< Array< dof_id_type > > _ghost_comm_list
Definition: KokkosSystem.h:368

◆ getLocalCommList()

const Array<Array<dof_id_type> >& Moose::Kokkos::System::getLocalCommList ( ) const
inline

Get the list of local DOF indices to communicate.

Returns
The list of local DOF indices to communicate

Definition at line 149 of file KokkosSystem.h.

149 { return _local_comm_list; }
Array< Array< dof_id_type > > _local_comm_list
List of DOFs to send and receive.
Definition: KokkosSystem.h:367

◆ getMatrix()

KOKKOS_FUNCTION Matrix& Moose::Kokkos::System::getMatrix ( TagID  tag) const
inline

Get a tagged Kokkos matrix.

Parameters
tagThe matrix tag
Returns
The Kokkos matrix

Definition at line 250 of file KokkosSystem.h.

250 { return _matrices[tag]; }
Array< Matrix > _matrices
Definition: KokkosSystem.h:318

◆ getMatrixValue()

KOKKOS_FUNCTION Real& Moose::Kokkos::System::getMatrixValue ( dof_id_type  row,
dof_id_type  col,
TagID  tag 
) const
inline

Get an entry from a tagged matrix.

Parameters
rowThe local row index
colThe global column index
tagThe matrix tag
Returns
The entry from the tagged matrix

Definition at line 270 of file KokkosSystem.h.

271  {
272  return _matrices[tag](row, col);
273  }
Array< Matrix > _matrices
Definition: KokkosSystem.h:318

◆ getNumGhostDofs()

KOKKOS_FUNCTION dof_id_type Moose::Kokkos::System::getNumGhostDofs ( ) const
inline

Get the number of ghost DOFs.

Returns
The number of ghost DOFs

Definition at line 198 of file KokkosSystem.h.

198 { return _num_ghost_dofs; }
const dof_id_type _num_ghost_dofs
Number of ghost DOFs.
Definition: KokkosSystem.h:311

◆ getNumLocalDofs()

KOKKOS_FUNCTION dof_id_type Moose::Kokkos::System::getNumLocalDofs ( ) const
inline

Get the number of local DOFs.

Returns
The number of local DOFs

Definition at line 192 of file KokkosSystem.h.

192 { return _num_local_dofs; }
const dof_id_type _num_local_dofs
Number of local DOFs.
Definition: KokkosSystem.h:306

◆ getSparsity()

const Sparsity& Moose::Kokkos::System::getSparsity ( ) const
inline

Get the sparisty pattern data.

Returns
The sparisty pattern data

Definition at line 161 of file KokkosSystem.h.

161 { return _sparsity; }
Sparsity _sparsity
Matrix sparsity pattern data.
Definition: KokkosSystem.h:390

◆ getSystem() [1/2]

SystemBase& Moose::Kokkos::System::getSystem ( )
inline

Get the MOOSE system.

Returns
The MOOSE system

Definition at line 129 of file KokkosSystem.h.

129 { return _system; }
SystemBase & _system
Reference of the MOOSE system.
Definition: KokkosSystem.h:281

◆ getSystem() [2/2]

const SystemBase& Moose::Kokkos::System::getSystem ( ) const
inline

Definition at line 130 of file KokkosSystem.h.

130 { return _system; }
SystemBase & _system
Reference of the MOOSE system.
Definition: KokkosSystem.h:281

◆ getVector()

KOKKOS_FUNCTION Vector& Moose::Kokkos::System::getVector ( TagID  tag) const
inline

Get a tagged Kokkos vector.

Parameters
tagThe vector tag
Returns
The Kokkos vector

Definition at line 243 of file KokkosSystem.h.

243 { return _vectors[tag]; }
Array< Vector > _vectors
Kokkos vectors and matrices on device.
Definition: KokkosSystem.h:317

◆ getVectorDofValue()

KOKKOS_FUNCTION Real& Moose::Kokkos::System::getVectorDofValue ( const dof_id_type  dof,
const TagID  tag 
) const
inline

Get the DOF value of a tagged vector.

Parameters
dofThe local DOF index
tagThe vector tag
Returns
The DOF value

Definition at line 258 of file KokkosSystem.h.

Referenced by Moose::Kokkos::FESystem::getVectorQpGradFace(), Moose::Kokkos::FESystem::getVectorQpValueFace(), Moose::Kokkos::FESystem::getVectorQpVectorGradFace(), and Moose::Kokkos::FESystem::getVectorQpVectorValueFace().

259  {
260  return _vectors[tag][dof];
261  }
Array< Vector > _vectors
Kokkos vectors and matrices on device.
Definition: KokkosSystem.h:317

◆ isMatrixTagActive()

KOKKOS_FUNCTION bool Moose::Kokkos::System::isMatrixTagActive ( TagID  tag) const
inline

Check whether a matrix tag is active.

Parameters
tagThe matrix tag
Returns
Whether the matrix tag is active

Definition at line 186 of file KokkosSystem.h.

186 { return _matrix_tag_active[tag]; }
Array< bool > _matrix_tag_active
Definition: KokkosSystem.h:360

◆ isResidualTagActive()

KOKKOS_FUNCTION bool Moose::Kokkos::System::isResidualTagActive ( TagID  tag) const
inline

Check whether a residual tag is active.

Parameters
tagThe residual tag
Returns
Whether the residual tag is active

Definition at line 179 of file KokkosSystem.h.

179 { return _residual_tag_active[tag]; }
Array< bool > _residual_tag_active
Flag whether each tag is active.
Definition: KokkosSystem.h:359

◆ isVariableActive()

KOKKOS_FUNCTION bool Moose::Kokkos::System::isVariableActive ( unsigned int  var,
ContiguousSubdomainID  subdomain 
) const
inline

Check whether a variable is active on a subdomain.

Parameters
varThe variable number
subdomainThe contiguous subdomain ID
Returns
Whether the variable is active

Definition at line 169 of file KokkosSystem.h.

170  {
171  return _var_subdomain_active(var, subdomain);
172  }
Array2D< bool > _var_subdomain_active
Whether each variable is active on subdomains.
Definition: KokkosSystem.h:339

◆ kokkosMesh()

KOKKOS_FUNCTION const Mesh& Moose::Kokkos::MeshHolder::kokkosMesh ( ) const
inlineinherited

Get the const reference of the Kokkos mesh.

Returns
The const reference of the Kokkos mesh depending on the architecture this function is being called on

Definition at line 651 of file KokkosMesh.h.

Referenced by Moose::Kokkos::Assembly::computePhysicalMap(), Moose::Kokkos::LinearFVElementalKernel::operator()(), Moose::Kokkos::LinearFVFluxKernel::operator()(), Moose::Kokkos::VectorIntegratedBC::operator()(), Moose::Kokkos::VectorKernel::operator()(), Moose::Kokkos::IntegratedBC::operator()(), Moose::Kokkos::Kernel::operator()(), Moose::Kokkos::LinearFVBoundaryCondition::operator()(), Moose::Kokkos::Datum::q_point(), and KokkosBoundNodalKernel::skipOnBoundary().

652  {
653  KOKKOS_IF_ON_HOST(
655  "kokkosMesh() was called too early. Kokkos mesh is available after problem "
656  "initialization. Override initialSetup() if you need to setup your object data "
657  "using the Kokkos mesh.");
658 
659  return _mesh_host;)
660 
661  return _mesh_device;
662  }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:311
bool initialized() const
Get whether the mesh was initialized.
Definition: KokkosMesh.h:68
const Mesh _mesh_device
Device copy of the Kokkos mesh.
Definition: KokkosMesh.h:673
const Mesh & _mesh_host
Host reference of the Kokkos mesh.
Definition: KokkosMesh.h:669

◆ localToGlobalDofIndex()

KOKKOS_FUNCTION dof_id_type Moose::Kokkos::System::localToGlobalDofIndex ( dof_id_type  dof) const
inline

Get the global DOF index of a local DOF index.

Parameters
dofThe local DOF index
Returns
The global DOF index

Definition at line 233 of file KokkosSystem.h.

234  {
235  return _local_to_global_dof_index[dof];
236  }
Array< dof_id_type > _local_to_global_dof_index
Map from local DOF index to global DOF index.
Definition: KokkosSystem.h:329

◆ perfGraph()

PerfGraph & PerfGraphInterface::perfGraph ( )
inherited

Get the PerfGraph.

Definition at line 86 of file PerfGraphInterface.C.

Referenced by CommonOutputAction::act(), PerfGraphData::finalize(), PerfGraphReporter::finalize(), and PerfGraphOutput::output().

87 {
88  return _pg_moose_app.perfGraph();
89 }
MooseApp & _pg_moose_app
The MooseApp that owns the PerfGraph.
PerfGraph & perfGraph()
Get the PerfGraph for this app.
Definition: MooseApp.h:179

◆ registerTimedSection() [1/2]

PerfID PerfGraphInterface::registerTimedSection ( const std::string &  section_name,
const unsigned int  level 
) const
protectedinherited

Call to register a named section for timing.

Parameters
section_nameThe name of the code section to be timed
levelThe importance of the timer - lower is more important (0 will always come out)
Returns
The ID of the section - use when starting timing

Definition at line 61 of file PerfGraphInterface.C.

63 {
64  const auto timed_section_name = timedSectionName(section_name);
65  if (!moose::internal::getPerfGraphRegistry().sectionExists(timed_section_name))
66  return moose::internal::getPerfGraphRegistry().registerSection(timed_section_name, level);
67  else
68  return moose::internal::getPerfGraphRegistry().sectionID(timed_section_name);
69 }
PerfID registerSection(const std::string &section_name, const unsigned int level)
Call to register a named section for timing.
std::string timedSectionName(const std::string &section_name) const
PerfID sectionID(const std::string &section_name) const
Given a name return the PerfID The name of the section.
PerfGraphRegistry & getPerfGraphRegistry()
Get the global PerfGraphRegistry singleton.

◆ registerTimedSection() [2/2]

PerfID PerfGraphInterface::registerTimedSection ( const std::string &  section_name,
const unsigned int  level,
const std::string &  live_message,
const bool  print_dots = true 
) const
protectedinherited

Call to register a named section for timing.

Parameters
section_nameThe name of the code section to be timed
levelThe importance of the timer - lower is more important (0 will always come out)
live_messageThe message to be printed to the screen during execution
print_dotsWhether or not progress dots should be printed for this section
Returns
The ID of the section - use when starting timing

Definition at line 72 of file PerfGraphInterface.C.

76 {
77  const auto timed_section_name = timedSectionName(section_name);
78  if (!moose::internal::getPerfGraphRegistry().sectionExists(timed_section_name))
80  timedSectionName(section_name), level, live_message, print_dots);
81  else
82  return moose::internal::getPerfGraphRegistry().sectionID(timed_section_name);
83 }
PerfID registerSection(const std::string &section_name, const unsigned int level)
Call to register a named section for timing.
std::string timedSectionName(const std::string &section_name) const
PerfID sectionID(const std::string &section_name) const
Given a name return the PerfID The name of the section.
PerfGraphRegistry & getPerfGraphRegistry()
Get the global PerfGraphRegistry singleton.

◆ setActiveMatrixTags()

void Moose::Kokkos::System::setActiveMatrixTags ( const std::set< TagID > &  tags)

Set the active matrix tags.

Parameters
varsThe active matrix tags

◆ setActiveResidualTags()

void Moose::Kokkos::System::setActiveResidualTags ( const std::set< TagID > &  tags)

Set the active residual tags.

Parameters
tagsThe active residual tags

◆ setActiveSolutionTags()

void Moose::Kokkos::System::setActiveSolutionTags ( const std::set< TagID > &  tags)

Set the active solution tags.

Parameters
tagsThe active solution tags

◆ setActiveVariables()

void Moose::Kokkos::System::setActiveVariables ( const std::set< MooseVariableFieldBase *> &  vars)

Set the active variables.

Parameters
varsThe active MOOSE variables

◆ setupDofs()

void Moose::Kokkos::System::setupDofs ( )
private

Setup DOF data.

◆ setupSparsity()

void Moose::Kokkos::System::setupSparsity ( )
private

Setup sparsity data.

◆ setupVariables()

void Moose::Kokkos::System::setupVariables ( )
private

Setup variable data.

◆ sync() [1/4]

void Moose::Kokkos::System::sync ( const MemcpyType  dir)

Synchronize the active tagged vectors and matrices between host and device.

Parameters
dirCopy direction

◆ sync() [2/4]

void Moose::Kokkos::System::sync ( const std::set< TagID > &  tags,
const MemcpyType  dir 
)

Synchronize the specified tagged vectors between host and device.

Parameters
tagsThe vector tags
dirCopy direction

◆ sync() [3/4]

void Moose::Kokkos::System::sync ( const std::vector< TagID > &  tags,
const MemcpyType  dir 
)

◆ sync() [4/4]

void Moose::Kokkos::System::sync ( const TagID  tag,
const MemcpyType  dir 
)

◆ timedSectionName()

std::string PerfGraphInterface::timedSectionName ( const std::string &  section_name) const
protectedinherited
Returns
The name of the timed section with the name section_name.

Optionally adds a prefix if one is defined.

Definition at line 55 of file PerfGraphInterface.C.

Referenced by PerfGraphInterface::registerTimedSection().

56 {
57  return _prefix.empty() ? "" : (_prefix + "::") + section_name;
58 }
const std::string _prefix
A prefix to use for all sections.

◆ validParams()

InputParameters PerfGraphInterface::validParams ( )
staticinherited

Definition at line 16 of file PerfGraphInterface.C.

Referenced by Convergence::validParams().

17 {
19  return params;
20 }
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
InputParameters emptyInputParameters()

Member Data Documentation

◆ _active_matrix_tags

Array<TagID> Moose::Kokkos::System::_active_matrix_tags
protected

Definition at line 352 of file KokkosSystem.h.

Referenced by clearActiveMatrixTags().

◆ _active_residual_tags

Array<TagID> Moose::Kokkos::System::_active_residual_tags
protected

Definition at line 351 of file KokkosSystem.h.

Referenced by clearActiveResidualTags().

◆ _active_solution_tags

Array<TagID> Moose::Kokkos::System::_active_solution_tags
protected

List of active tags.

Definition at line 350 of file KokkosSystem.h.

Referenced by clearActiveSolutionTags().

◆ _active_variables

Array<unsigned int> Moose::Kokkos::System::_active_variables
protected

List of active variable numbers.

Definition at line 344 of file KokkosSystem.h.

Referenced by clearActiveVariables().

◆ _comm

const Parallel::Communicator& Moose::Kokkos::System::_comm
protected

Reference of the libMesh communicator.

Definition at line 296 of file KokkosSystem.h.

Referenced by getComm().

◆ _dof_map

const libMesh::DofMap& Moose::Kokkos::System::_dof_map
protected

Reference of the libMesh DOF map.

Definition at line 291 of file KokkosSystem.h.

Referenced by getDofMap().

◆ _ghost_comm_list

Array<Array<dof_id_type> > Moose::Kokkos::System::_ghost_comm_list
protected

Definition at line 368 of file KokkosSystem.h.

Referenced by getGhostCommList().

◆ _local_comm_list

Array<Array<dof_id_type> > Moose::Kokkos::System::_local_comm_list
protected

List of DOFs to send and receive.

Definition at line 367 of file KokkosSystem.h.

Referenced by getLocalCommList().

◆ _local_elem_dof_index

Array<Array2D<dof_id_type> > Moose::Kokkos::System::_local_elem_dof_index
protected

Local element DOF indices of each variable.

Definition at line 324 of file KokkosSystem.h.

Referenced by getElemGlobalDofIndex(), and getElemLocalDofIndex().

◆ _local_to_global_dof_index

Array<dof_id_type> Moose::Kokkos::System::_local_to_global_dof_index
protected

◆ _matrices

Array<Matrix> Moose::Kokkos::System::_matrices
protected

Definition at line 318 of file KokkosSystem.h.

Referenced by getMatrix(), and getMatrixValue().

◆ _matrix_tag_active

Array<bool> Moose::Kokkos::System::_matrix_tag_active
protected

Definition at line 360 of file KokkosSystem.h.

Referenced by clearActiveMatrixTags(), and isMatrixTagActive().

◆ _max_dofs_per_elem

Array<unsigned int> Moose::Kokkos::System::_max_dofs_per_elem
protected

Maximum number of DOFs per element for each variable.

Definition at line 334 of file KokkosSystem.h.

◆ _mesh

const MooseMesh& Moose::Kokkos::System::_mesh
protected

Reference of the MOOSE mesh.

Definition at line 286 of file KokkosSystem.h.

◆ _num_ghost_dofs

const dof_id_type Moose::Kokkos::System::_num_ghost_dofs
protected

Number of ghost DOFs.

Definition at line 311 of file KokkosSystem.h.

Referenced by getNumGhostDofs().

◆ _num_local_dofs

const dof_id_type Moose::Kokkos::System::_num_local_dofs
protected

Number of local DOFs.

Definition at line 306 of file KokkosSystem.h.

Referenced by getNumLocalDofs().

◆ _num_vars

const unsigned int Moose::Kokkos::System::_num_vars
protected

Number of variables.

Definition at line 301 of file KokkosSystem.h.

◆ _pg_moose_app

MooseApp& PerfGraphInterface::_pg_moose_app
protectedinherited

The MooseApp that owns the PerfGraph.

Definition at line 135 of file PerfGraphInterface.h.

Referenced by PerfGraphInterface::perfGraph().

◆ _prefix

const std::string PerfGraphInterface::_prefix
protectedinherited

A prefix to use for all sections.

Definition at line 138 of file PerfGraphInterface.h.

Referenced by PerfGraphInterface::timedSectionName().

◆ _residual_tag_active

Array<bool> Moose::Kokkos::System::_residual_tag_active
protected

Flag whether each tag is active.

Definition at line 359 of file KokkosSystem.h.

Referenced by clearActiveResidualTags(), and isResidualTagActive().

◆ _sparsity

Sparsity Moose::Kokkos::System::_sparsity
private

Matrix sparsity pattern data.

Definition at line 390 of file KokkosSystem.h.

Referenced by getSparsity().

◆ _system

SystemBase& Moose::Kokkos::System::_system
protected

Reference of the MOOSE system.

Definition at line 281 of file KokkosSystem.h.

Referenced by getSystem().

◆ _var_subdomain_active

Array2D<bool> Moose::Kokkos::System::_var_subdomain_active
protected

Whether each variable is active on subdomains.

Definition at line 339 of file KokkosSystem.h.

Referenced by isVariableActive().

◆ _vectors

Array<Vector> Moose::Kokkos::System::_vectors
protected

Kokkos vectors and matrices on device.

Definition at line 317 of file KokkosSystem.h.

Referenced by getVector(), Moose::Kokkos::FESystem::getVectorDofADValue(), and getVectorDofValue().


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