45 static const std::string
value() {
46 return "ROCM_Offload";
58 static const std::string
value() {
74 const std::string& status_variable
Definition language_extension.h:39
Base class for GPU schedule types (CUDA/ROCm) using CRTP pattern.
Definition gpu_schedule_type.h:26
Base class for GPU schedule types (CUDA/ROCm) using CRTP pattern.
Definition gpu_offload_schedule_type.h:123
ROCM schedule type inheriting shared GPU functionality Provides ROCM-specific value() and default blo...
Definition rocm.h:43
static const std::string value()
Definition rocm.h:45
ROCM schedule type inheriting shared GPU functionality Provides ROCM-specific value() and default blo...
Definition rocm.h:56
static symbolic::Integer default_block_size_x()
Definition rocm.h:61
static const std::string value()
Definition rocm.h:58
Integer integer(int64_t value)
Creates an integer constant.
SymEngine::RCP< const SymEngine::Integer > Integer
Reference-counted pointer to a SymEngine Integer constant.
Definition symbolic.h:77
StringEnum TargetType
Definition instrumentation_info.h:32
StringEnum ImplementationType
Implementation type identifier for library nodes.
Definition library_node.h:75
GPUDimension
Shared GPU dimension enum for CUDA/ROCm targets Represents the X, Y, Z dimensions used for GPU kernel...
Definition gpu_types.h:10
Definition rocm_library_node_rewriter_pass.h:9
codegen::TargetType TargetType_ROCM_Offload
Definition rocm.h:66
void check_rocm_kernel_launch_errors(codegen::PrettyPrinter &stream, const codegen::LanguageExtension &language_extension)
data_flow::ImplementationType ImplementationType_ROCMWithoutTransfers
ROCM implementation without memory transfers Used for ROCm BLAS, memset, and other ROCm-accelerated l...
Definition rocm.h:34
bool do_rocm_error_checking()
std::string ROCM_DEVICE_PREFIX
Definition rocm.h:15
data_flow::ImplementationType ImplementationType_ROCMWithTransfers
ROCM implementation with automatic memory transfers Used for ROCm BLAS, memset, and other ROCm-accele...
Definition rocm.h:28
codegen::TargetType TargetType_ROCM
Definition rocm.h:68
void rocm_error_checking(codegen::PrettyPrinter &stream, const codegen::LanguageExtension &language_extension, const std::string &status_variable)
int rocm_wavefront_size()
Wavefront width of the target device, queried once at codegen time.
constexpr int ROCM_WARP_SIZE
Definition rocm.h:17
gpu::GPUDimension ROCMDimension
Definition rocm.h:37
data_flow::ImplementationType ImplementationType_ROCM
Generic ROCM implementation.
Definition rocm.h:22