36 template <
typename Derived>
38 operator()(ReducerLoop,
const ThreadID tid,
const Derived & reducer, Real * result)
const;
41 template <
typename Derived>
45 const Derived & reducer,
52 reducer.template reduce<Derived>(datum, result);
The Kokkos object that holds thread-private data in the parallel operations of any Kokkos object...
const unsigned int invalid_uint
virtual ThreadID numReducerThreads() const override
Get the number of threads.
KOKKOS_FUNCTION const Assembly & kokkosAssembly() const
Get the const reference of the Kokkos assembly.
ElementReducer(const MooseObject *object)
MOOSE_KOKKOS_INDEX_TYPE ThreadID
Every object that can be built by the factory should be derived from this class.
KOKKOS_FUNCTION ContiguousElementID kokkosBlockElementID(Moose::Kokkos::ThreadID tid) const
Get the contiguous element ID this Kokkos thread is operating on.
KOKKOS_FUNCTION void operator()(ReducerLoop, const ThreadID tid, const Derived &reducer, Real *result) const
The parallel computation entry function called by Kokkos.
KOKKOS_FUNCTION dof_id_type numKokkosBlockElements() const
Get the number of elements this Kokkos object is operating on.
An interface that restricts an object to subdomains via the 'blocks' input parameter.
static InputParameters validParams()
KOKKOS_FUNCTION const Array< System > & kokkosSystems() const
Get the const reference of the Kokkos systems.