#include <KokkosReducerBase.h>
Classes | |
| struct | ReducerLoop |
| Kokkos function tag. More... | |
Public Member Functions | |
| ReducerBase (const MooseObject *object) | |
| ReducerBase (const ReducerBase &reducer) | |
| Copy constructor for parallel dispatch. More... | |
| KOKKOS_FUNCTION const Mesh & | kokkosMesh () const |
| Get the const reference of the Kokkos mesh. More... | |
| KOKKOS_FUNCTION const Assembly & | kokkosAssembly () const |
| Get the const reference of the Kokkos assembly. More... | |
| KOKKOS_FUNCTION const Array< System > & | kokkosSystems () const |
| Get the const reference of the Kokkos systems. More... | |
| Array< System > & | kokkosSystems () |
| Get the writeable host reference of the Kokkos systems. More... | |
| KOKKOS_FUNCTION const System & | kokkosSystem (unsigned int sys) const |
| Get the const reference of a Kokkos system. More... | |
| System & | kokkosSystem (unsigned int sys) |
| Get the writeable reference of a Kokkos system. More... | |
| template<typename Derived > | |
| KOKKOS_FUNCTION void | reduce (Datum &, Real *) const |
| Default methods to prevent compile errors even when these methods were not defined in the derived class. More... | |
| template<typename Derived > | |
| KOKKOS_FUNCTION void | join (Real *, const Real *) const |
| template<typename Derived > | |
| KOKKOS_FUNCTION void | init (Real *) const |
Static Public Member Functions | |
| template<typename Derived > | |
| static auto | defaultReduce () |
| Function used to check if users have overriden the hook method. More... | |
Protected Member Functions | |
| virtual void | computeReducer () |
| Dispatch reduction operation. More... | |
| virtual ThreadID | numReducerThreads () const =0 |
| Get the number of threads. More... | |
| void | allocateReductionBuffer (const unsigned int size) |
| Allocate reduction buffer. More... | |
Protected Attributes | |
| const MooseObject * | _reducer_object |
| MOOSE object. More... | |
| std::unique_ptr< DispatcherBase > | _reducer_dispatcher |
| Kokkos functor dispatcher. More... | |
| ::Kokkos::View< Real *, ::Kokkos::HostSpace > | _reduction_buffer |
| Reduction buffer. More... | |
Definition at line 23 of file KokkosReducerBase.h.
| Moose::Kokkos::ReducerBase::ReducerBase | ( | const MooseObject * | object | ) |
| Moose::Kokkos::ReducerBase::ReducerBase | ( | const ReducerBase & | reducer | ) |
Copy constructor for parallel dispatch.
Allocate reduction buffer.
Definition at line 88 of file KokkosReducerBase.h.
|
protectedvirtual |
Dispatch reduction operation.
|
inlinestatic |
Function used to check if users have overriden the hook method.
Definition at line 70 of file KokkosReducerBase.h.
|
inline |
Definition at line 58 of file KokkosReducerBase.h.
|
inline |
Definition at line 52 of file KokkosReducerBase.h.
|
inlineinherited |
Get the const reference of the Kokkos assembly.
Definition at line 569 of file KokkosAssembly.h.
Referenced by Moose::Kokkos::System::getVectorQpADGrad(), Moose::Kokkos::System::getVectorQpADGradFace(), Moose::Kokkos::System::getVectorQpADValue(), Moose::Kokkos::System::getVectorQpADValueFace(), Moose::Kokkos::System::getVectorQpGradFace(), Moose::Kokkos::System::getVectorQpValueFace(), Moose::Kokkos::ElementReducer::operator()(), Moose::Kokkos::SideReducer::operator()(), Moose::Kokkos::NodalReducer::operator()(), Moose::Kokkos::NodalUserObject::operator()(), Moose::Kokkos::SideUserObject::operator()(), Moose::Kokkos::ElementUserObject::operator()(), Moose::Kokkos::ADNodalBC::operator()(), Moose::Kokkos::ADKernel::operator()(), Moose::Kokkos::ADIntegratedBC::operator()(), Moose::Kokkos::AuxKernel::operator()(), Moose::Kokkos::Material::operator()(), Moose::Kokkos::NodalBC::operator()(), Moose::Kokkos::NodalKernel::operator()(), Moose::Kokkos::IntegratedBC::operator()(), and Moose::Kokkos::Kernel::operator()().
|
inlineinherited |
Get the const reference of the Kokkos mesh.
Definition at line 452 of file KokkosMesh.h.
Referenced by Moose::Kokkos::Assembly::computePhysicalMap(), Moose::Kokkos::Kernel::operator()(), Moose::Kokkos::IntegratedBC::operator()(), Moose::Kokkos::Datum::q_point(), and KokkosBoundNodalKernel::skipOnBoundary().
|
inlineinherited |
Get the const reference of a Kokkos system.
| sys | The system number |
Definition at line 792 of file KokkosSystem.h.
Referenced by Moose::Kokkos::ResidualObject::accumulateTaggedElementalMatrix(), Moose::Kokkos::ResidualObject::accumulateTaggedElementalResidual(), Moose::Kokkos::ResidualObject::accumulateTaggedNodalMatrix(), Moose::Kokkos::ResidualObject::accumulateTaggedNodalResidual(), KokkosCopyValueAux::computeElementInternal(), KokkosCopyValueAux::computeNodeInternal(), KokkosExtraIDIntegralVectorPostprocessor::execute(), Moose::Kokkos::ADNodalBC::operator()(), Moose::Kokkos::AuxKernel::operator()(), Moose::Kokkos::NodalBC::operator()(), Moose::Kokkos::NodalKernel::operator()(), Moose::Kokkos::Kernel::operator()(), Moose::Kokkos::IntegratedBC::operator()(), KokkosExtraIDIntegralVectorPostprocessor::reduce(), Moose::Kokkos::AuxKernel::setElementSolution(), and Moose::Kokkos::AuxKernel::setNodeSolution().
Get the writeable reference of a Kokkos system.
| sys | The system number |
Definition at line 803 of file KokkosSystem.h.
|
inlineinherited |
Get the const reference of the Kokkos systems.
Definition at line 775 of file KokkosSystem.h.
Referenced by Moose::Kokkos::ElementReducer::operator()(), Moose::Kokkos::SideReducer::operator()(), Moose::Kokkos::NodalReducer::operator()(), Moose::Kokkos::NodalUserObject::operator()(), Moose::Kokkos::SideUserObject::operator()(), Moose::Kokkos::ElementUserObject::operator()(), Moose::Kokkos::ADNodalBC::operator()(), Moose::Kokkos::ADKernel::operator()(), Moose::Kokkos::ADIntegratedBC::operator()(), Moose::Kokkos::AuxKernel::operator()(), Moose::Kokkos::Material::operator()(), Moose::Kokkos::NodalBC::operator()(), Moose::Kokkos::NodalKernel::operator()(), Moose::Kokkos::IntegratedBC::operator()(), and Moose::Kokkos::Kernel::operator()().
Get the writeable host reference of the Kokkos systems.
Definition at line 785 of file KokkosSystem.h.
|
protectedpure virtual |
Get the number of threads.
Implemented in Moose::Kokkos::NodalReducer, Moose::Kokkos::ElementReducer, and Moose::Kokkos::SideReducer.
|
inline |
Default methods to prevent compile errors even when these methods were not defined in the derived class.
Definition at line 46 of file KokkosReducerBase.h.
|
protected |
Kokkos functor dispatcher.
Definition at line 100 of file KokkosReducerBase.h.
|
protected |
MOOSE object.
Definition at line 96 of file KokkosReducerBase.h.
|
protected |
Reduction buffer.
Definition at line 104 of file KokkosReducerBase.h.
Referenced by allocateReductionBuffer().
1.8.14