RAJA
RAJA provides a collection of platform portability abstractions for C++ HPC applications.
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions
launch_core.hpp File Reference

RAJA header file containing the core components of RAJA::launch. More...

#include "RAJA/config.hpp"
#include "RAJA/internal/get_platform.hpp"
#include "RAJA/pattern/launch/launch_context_policy.hpp"
#include "RAJA/util/StaticLayout.hpp"
#include "RAJA/util/macros.hpp"
#include "RAJA/util/plugins.hpp"
#include "RAJA/util/types.hpp"
#include "camp/camp.hpp"
#include "camp/concepts.hpp"
#include "camp/tuple.hpp"

Go to the source code of this file.

Classes

struct  RAJA::null_launch_t
 
struct  RAJA::LoopPolicy< HOST_POLICY >
 
struct  RAJA::LaunchPolicy< HOST_POLICY >
 
struct  RAJA::Teams
 
struct  RAJA::Threads
 
struct  RAJA::Lanes
 
struct  RAJA::LaunchParams
 
class  RAJA::LaunchContextBase
 
class  RAJA::LaunchContextT< LaunchContextHostPolicy >
 

Namespaces

 RAJA
 
 RAJA::expt
 

Macros

#define RAJA_TEAM_SHARED
 

Typedefs

using RAJA::LaunchContext = LaunchContextT< LaunchContextHostPolicy >
 
template<typename POLICY_LIST >
using RAJA::loop_policy = typename POLICY_LIST::host_policy_t
 

Enumerations

enum class  RAJA::ExecPlace : int { RAJA::HOST , RAJA::DEVICE , RAJA::NUM_PLACES }
 

Functions

template<typename LAUNCH_POLICY , typename... ReduceParams>
void RAJA::launch (LaunchParams const &launch_params, ReduceParams &&... rest_of_launch_args)
 
template<typename POLICY_LIST , typename BODY >
void RAJA::launch (ExecPlace place, LaunchParams const &params, BODY const &body)
 
template<typename POLICY_LIST , typename... ReduceParams>
void RAJA::launch (ExecPlace place, const LaunchParams &launch_params, ReduceParams &&... rest_of_launch_args)
 
template<typename T >
RAJA::resources::Resource RAJA::Get_Host_Resource (T host_res, RAJA::ExecPlace device)
 
template<typename POLICY_LIST , typename... ReduceParams>
resources::EventProxy< resources::Resource > RAJA::launch (RAJA::resources::Resource res, LaunchParams const &launch_params, ReduceParams &&... rest_of_launch_args)
 
template<typename POLICY_LIST , typename CONTEXT , typename SEGMENT , typename BODY >
RAJA_SUPPRESS_HD_WARN RAJA_HOST_DEVICE RAJA_INLINE void RAJA::loop (CONTEXT const &ctx, SEGMENT const &segment, BODY const &body)
 
template<typename POLICY_LIST , typename CONTEXT , typename SEGMENT , typename BODY >
RAJA_HOST_DEVICE RAJA_INLINE void RAJA::loop_icount (CONTEXT const &ctx, SEGMENT const &segment, BODY const &body)
 
template<typename POLICY_LIST , typename CONTEXT , typename SEGMENT , typename BODY >
RAJA_SUPPRESS_HD_WARN RAJA_HOST_DEVICE RAJA_INLINE void RAJA::expt::loop (CONTEXT const &ctx, SEGMENT const &segment0, SEGMENT const &segment1, BODY const &body)
 
template<typename POLICY_LIST , typename CONTEXT , typename SEGMENT , typename BODY >
RAJA_SUPPRESS_HD_WARN RAJA_HOST_DEVICE RAJA_INLINE void RAJA::expt::loop_icount (CONTEXT const &ctx, SEGMENT const &segment0, SEGMENT const &segment1, BODY const &body)
 
template<typename POLICY_LIST , typename CONTEXT , typename SEGMENT , typename BODY >
RAJA_SUPPRESS_HD_WARN RAJA_HOST_DEVICE RAJA_INLINE void RAJA::expt::loop (CONTEXT const &ctx, SEGMENT const &segment0, SEGMENT const &segment1, SEGMENT const &segment2, BODY const &body)
 
template<typename POLICY_LIST , typename CONTEXT , typename SEGMENT , typename BODY >
RAJA_SUPPRESS_HD_WARN RAJA_HOST_DEVICE RAJA_INLINE void RAJA::expt::loop_icount (CONTEXT const &ctx, SEGMENT const &segment0, SEGMENT const &segment1, SEGMENT const &segment2, BODY const &body)
 
template<typename POLICY_LIST , typename CONTEXT , typename TILE_T , typename SEGMENT , typename BODY >
RAJA_HOST_DEVICE RAJA_INLINE void RAJA::tile (CONTEXT const &ctx, TILE_T tile_size, SEGMENT const &segment, BODY const &body)
 
template<typename POLICY_LIST , typename CONTEXT , typename TILE_T , typename SEGMENT , typename BODY >
RAJA_HOST_DEVICE RAJA_INLINE void RAJA::tile_tcount (CONTEXT const &ctx, TILE_T tile_size, SEGMENT const &segment, BODY const &body)
 
template<typename POLICY_LIST , typename CONTEXT , typename TILE_T , typename SEGMENT , typename BODY >
RAJA_HOST_DEVICE RAJA_INLINE void RAJA::expt::tile (CONTEXT const &ctx, TILE_T tile_size0, TILE_T tile_size1, SEGMENT const &segment0, SEGMENT const &segment1, BODY const &body)
 
template<typename POLICY_LIST , typename CONTEXT , typename TILE_T , typename SEGMENT , typename BODY >
RAJA_HOST_DEVICE RAJA_INLINE void RAJA::expt::tile_tcount (CONTEXT const &ctx, TILE_T tile_size0, TILE_T tile_size1, SEGMENT const &segment0, SEGMENT const &segment1, BODY const &body)
 
template<typename POLICY_LIST , typename CONTEXT , typename TILE_T , typename SEGMENT , typename BODY >
RAJA_HOST_DEVICE RAJA_INLINE void RAJA::expt::tile (CONTEXT const &ctx, TILE_T tile_size0, TILE_T tile_size1, TILE_T tile_size2, SEGMENT const &segment0, SEGMENT const &segment1, SEGMENT const &segment2, BODY const &body)
 
template<typename POLICY_LIST , typename CONTEXT , typename TILE_T , typename SEGMENT , typename BODY >
RAJA_HOST_DEVICE RAJA_INLINE void RAJA::expt::tile_tcount (CONTEXT const &ctx, TILE_T tile_size0, TILE_T tile_size1, TILE_T tile_size2, SEGMENT const &segment0, SEGMENT const &segment1, SEGMENT const &segment2, BODY const &body)
 

Detailed Description

RAJA header file containing the core components of RAJA::launch.

Macro Definition Documentation

◆ RAJA_TEAM_SHARED

#define RAJA_TEAM_SHARED