RAJA
RAJA provides a collection of platform portability abstractions for C++ HPC applications.
Public Types | Public Member Functions | Static Public Attributes | List of all members
RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE > Class Template Reference

#include <BlockLiteral.hpp>

Inheritance diagram for RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >:
RAJA::internal::expt::ET::TensorExpressionBase< BlockLiteral< STORAGE_TYPE, TENSOR_TYPE > > RAJA::internal::expt::ET::TensorExpressionConcreteBase

Public Types

using self_type = BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >
 
using storage_type = STORAGE_TYPE
 
using tensor_type = TENSOR_TYPE
 
using result_type = TENSOR_TYPE
 
using ref_type = typename STORAGE_TYPE::ref_type
 
using tile_type = typename ref_type::tile_type
 
using index_type = camp::idx_t
 
- Public Types inherited from RAJA::internal::expt::ET::TensorExpressionBase< BlockLiteral< STORAGE_TYPE, TENSOR_TYPE > >
using self_type = BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >
 

Public Member Functions

RAJA_INLINE constexpr RAJA_HOST_DEVICE index_type getDimSize (index_type dim) const
 
RAJA_INLINE constexpr RAJA_HOST_DEVICE BlockLiteral (tile_type tile_origin)
 
template<typename TILE_TYPE >
RAJA_INLINE RAJA_HOST_DEVICE result_type eval (TILE_TYPE const &tile) const
 
RAJA_INLINE RAJA_HOST_DEVICE ref_type get_ref ()
 
RAJA_INLINE RAJA_HOST_DEVICE void print_ast () const
 
- Public Member Functions inherited from RAJA::internal::expt::ET::TensorExpressionBase< BlockLiteral< STORAGE_TYPE, TENSOR_TYPE > >
RAJA_INLINE constexpr RAJA_HOST_DEVICE camp::idx_t getDimBegin (camp::idx_t) const
 
RAJA_SUPPRESS_HD_WARN RAJA_INLINE RAJA_HOST_DEVICE TensorAdd< self_type, normalize_operand_t< RHS > > operator+ (RHS const &rhs) const
 
RAJA_SUPPRESS_HD_WARN RAJA_INLINE RAJA_HOST_DEVICE TensorSubtract< self_type, normalize_operand_t< RHS > > operator- (RHS const &rhs) const
 
RAJA_SUPPRESS_HD_WARN RAJA_INLINE RAJA_HOST_DEVICE TensorNegate< self_typeoperator- () const
 
RAJA_SUPPRESS_HD_WARN RAJA_INLINE RAJA_HOST_DEVICE TensorMultiply< self_type, normalize_operand_t< RHS > > operator* (RHS const &rhs) const
 
RAJA_SUPPRESS_HD_WARN RAJA_INLINE RAJA_HOST_DEVICE TensorDivide< self_type, normalize_operand_t< RHS > > operator/ (RHS const &rhs) const
 
RAJA_SUPPRESS_HD_WARN RAJA_INLINE RAJA_HOST_DEVICE TensorTranspose< self_typetranspose () const
 

Static Public Attributes

static constexpr camp::idx_t s_num_dims = result_type::s_num_dims
 

Detailed Description

template<typename STORAGE_TYPE, typename TENSOR_TYPE>
class RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >

Temporary n-dimensional memory.

STORAGE_TYPE defines the memory storage TENSOR_TYPE defines what kind of tensor is returned by eval()

Member Typedef Documentation

◆ self_type

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
using RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::self_type = BlockLiteral<STORAGE_TYPE, TENSOR_TYPE>

◆ storage_type

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
using RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::storage_type = STORAGE_TYPE

◆ tensor_type

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
using RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::tensor_type = TENSOR_TYPE

◆ result_type

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
using RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::result_type = TENSOR_TYPE

◆ ref_type

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
using RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::ref_type = typename STORAGE_TYPE::ref_type

◆ tile_type

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
using RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::tile_type = typename ref_type::tile_type

◆ index_type

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
using RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::index_type = camp::idx_t

Constructor & Destructor Documentation

◆ BlockLiteral()

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
RAJA_INLINE constexpr RAJA_HOST_DEVICE RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::BlockLiteral ( tile_type  tile_origin)
inlineconstexpr

Member Function Documentation

◆ getDimSize()

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
RAJA_INLINE constexpr RAJA_HOST_DEVICE index_type RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::getDimSize ( index_type  dim) const
inlineconstexpr

◆ eval()

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
template<typename TILE_TYPE >
RAJA_INLINE RAJA_HOST_DEVICE result_type RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::eval ( TILE_TYPE const &  tile) const
inline

◆ get_ref()

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
RAJA_INLINE RAJA_HOST_DEVICE ref_type RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::get_ref ( )
inline

Returns a ref that points at this data, shifted by its origin

◆ print_ast()

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
RAJA_INLINE RAJA_HOST_DEVICE void RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::print_ast ( ) const
inline

Member Data Documentation

◆ s_num_dims

template<typename STORAGE_TYPE , typename TENSOR_TYPE >
constexpr camp::idx_t RAJA::internal::expt::ET::BlockLiteral< STORAGE_TYPE, TENSOR_TYPE >::s_num_dims = result_type::s_num_dims
staticconstexpr

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