docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
rocm.h File Reference

Go to the source code of this file.

Classes

class  sdfg::rocm::ScheduleType_ROCM_Offload
 ROCM schedule type inheriting shared GPU functionality Provides ROCM-specific value() and default block size (64 for wavefront size). More...
class  sdfg::rocm::ScheduleType_ROCM
 ROCM schedule type inheriting shared GPU functionality Provides ROCM-specific value() and default block size (64 for wavefront size). More...

Namespaces

namespace  sdfg
namespace  sdfg::rocm

Typedefs

using sdfg::rocm::ROCMDimension = gpu::GPUDimension

Functions

void sdfg::rocm::rocm_error_checking (codegen::PrettyPrinter &stream, const codegen::LanguageExtension &language_extension, const std::string &status_variable)
bool sdfg::rocm::do_rocm_error_checking ()
int sdfg::rocm::rocm_wavefront_size ()
 Wavefront width of the target device, queried once at codegen time.
void sdfg::rocm::check_rocm_kernel_launch_errors (codegen::PrettyPrinter &stream, const codegen::LanguageExtension &language_extension)

Variables

std::string sdfg::rocm::ROCM_DEVICE_PREFIX = "__daisy_hip_"
constexpr int sdfg::rocm::ROCM_WARP_SIZE = 64
data_flow::ImplementationType sdfg::rocm::ImplementationType_ROCM {"ROCM"}
 Generic ROCM implementation.
data_flow::ImplementationType sdfg::rocm::ImplementationType_ROCMWithTransfers {"ROCMWithTransfers"}
 ROCM implementation with automatic memory transfers Used for ROCm BLAS, memset, and other ROCm-accelerated library nodes.
data_flow::ImplementationType sdfg::rocm::ImplementationType_ROCMWithoutTransfers {"ROCMWithoutTransfers"}
 ROCM implementation without memory transfers Used for ROCm BLAS, memset, and other ROCm-accelerated library nodes assuming data is already on GPU.
codegen::TargetType sdfg::rocm::TargetType_ROCM_Offload {ScheduleType_ROCM_Offload::value()}
codegen::TargetType sdfg::rocm::TargetType_ROCM {ScheduleType_ROCM::value()}