specfem::execution::MappedChunkedDomainIterator

template<specfem::dimension::type DimensionTag, typename ParallelConfig, typename ViewType>
class MappedChunkedDomainIterator : public specfem::execution::ChunkedDomainIterator<DimensionTag, ParallelConfig, ViewType>

Public Types

using execution_space = typename base_type::execution_space

Execution space type.

Public Static Attributes

static constexpr PolicyType policy_type = PolicyType::KokkosPolicy

Indicates this is a Kokkos policy.

static constexpr bool is_top_level_policy = true

Indicates this is a top-level policy.

specfem::execution::MappedChunkElementIndex

template<specfem::dimension::type DimensionTag, typename SIMD, typename ViewType, typename TeamMemberType>
class MappedChunkElementIndex : public specfem::execution::ChunkElementIndex<DimensionTag, SIMD, ViewType, TeamMemberType>

Subclassed by specfem::chunk_element::MappedIndex< DimensionTag, SIMD, ViewType, TeamMemberType >

Public Functions

inline constexpr const TeamMemberType get_policy_index() const

Get the policy index that defined this chunk element index.

Returns:

const TeamMemberType The policy index that defined this chunk element index.

inline Kokkos::pair<typename ViewType::value_type, typename ViewType::value_type> get_range() const

Get a pair representing the range of indices in this chunk.

Returns:

Kokkos::pair<typename ViewType::value_type, typename ViewType::value_type> A pair containing the first and last index in the chunk.

specfem::execution::MappedChunkElementIterator

template<specfem::dimension::type DimensionTag, typename SIMD, typename ViewType, typename TeamMemberType>
class MappedChunkElementIterator : public specfem::execution::ChunkElementIterator<DimensionTag, SIMD, ViewType, TeamMemberType>

Public Types

using execution_space = typename base_type::execution_space

Execution space type.

Public Static Attributes

static constexpr PolicyType policy_type

Indicates this is a Kokkos policy.

static constexpr bool is_top_level_policy

Indicates this is not a top-level policy.

specfem::execution::MappedPointIndex

template<specfem::dimension::type DimensionTag, typename KokkosIndexType, bool UseSIMD, typename ExecutionSpace>
class MappedPointIndex

Public Types

using iterator_type = VoidIterator<ExecutionSpace>

Iterator type for this index.