docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
sdfg::offloading Namespace Reference

Classes

class  DataOffloadingNode
 Name does not match current function. More...
class  DataOffloadingNodeSerializer
class  CudaBatchedMatMulExpander
class  CudaConcatExpander
class  GPUConvExpander
class  ExternalDataOffloadingNode
class  ExternalDataOffloadingNodeDispatcher
class  ExternalDataOffloadingNodeSerializer
class  TargetLibNodeExpander
class  RocmBatchedMatMulExpander
class  RocmConcatExpander

Enumerations

enum class  DataTransferDirection : int8_t { D2H = -1 , NONE = 0 , H2D = 1 }
enum class  BufferLifecycle : int8_t { FREE = -1 , NO_CHANGE = 0 , ALLOC = 1 }

Functions

constexpr bool is_D2H (const DataTransferDirection &transfer_direction)
constexpr bool is_NONE (const DataTransferDirection &transfer_direction)
constexpr bool is_H2D (const DataTransferDirection &transfer_direction)
constexpr bool is_FREE (const BufferLifecycle &buffer_lifecycle)
constexpr bool is_NO_CHANGE (const BufferLifecycle &buffer_lifecycle)
constexpr bool is_ALLOC (const BufferLifecycle &buffer_lifecycle)
template<typename NodeT, typename... Args>
data_flow::LibraryNode & add_offloading_node (builder::StructuredSDFGBuilder &builder, Block &block, const std::string &host_container, const std::string &dev_container, DataTransferDirection direction, BufferLifecycle lifecycle, const types::IType &host_type, const types::IType &dev_type, DebugInfo debug_info=DebugInfo(), Args &&... args)
template<typename NodeT, typename... Args>
std::tuple< structured_control_flow::Block &, data_flow::LibraryNode & > add_offloading_block (builder::StructuredSDFGBuilder &builder, Sequence &parent, const std::string &host_container, const std::string &dev_container, DataTransferDirection direction, BufferLifecycle lifecycle, const types::IType &data_type, DebugInfo debug_info=DebugInfo(), Args &&... args)
void register_external_data_transfers_plugin ()
data_flow::LibraryNodeCode LibraryNodeType_External_Offloading ("ExternalOffloading")

Enumeration Type Documentation

◆ BufferLifecycle

enum class sdfg::offloading::BufferLifecycle : int8_t
strong
Enumerator
FREE 
NO_CHANGE 
ALLOC 

◆ DataTransferDirection

enum class sdfg::offloading::DataTransferDirection : int8_t
strong
Enumerator
D2H 
NONE 
H2D 

Function Documentation

◆ add_offloading_block()

template<typename NodeT, typename... Args>
std::tuple< structured_control_flow::Block &, data_flow::LibraryNode & > sdfg::offloading::add_offloading_block ( builder::StructuredSDFGBuilder & builder,
Sequence & parent,
const std::string & host_container,
const std::string & dev_container,
DataTransferDirection direction,
BufferLifecycle lifecycle,
const types::IType & data_type,
DebugInfo debug_info = DebugInfo(),
Args &&... args )

◆ add_offloading_node()

template<typename NodeT, typename... Args>
data_flow::LibraryNode & sdfg::offloading::add_offloading_node ( builder::StructuredSDFGBuilder & builder,
Block & block,
const std::string & host_container,
const std::string & dev_container,
DataTransferDirection direction,
BufferLifecycle lifecycle,
const types::IType & host_type,
const types::IType & dev_type,
DebugInfo debug_info = DebugInfo(),
Args &&... args )

◆ is_ALLOC()

bool sdfg::offloading::is_ALLOC ( const BufferLifecycle & buffer_lifecycle)
constexpr

◆ is_D2H()

bool sdfg::offloading::is_D2H ( const DataTransferDirection & transfer_direction)
constexpr

◆ is_FREE()

bool sdfg::offloading::is_FREE ( const BufferLifecycle & buffer_lifecycle)
constexpr

◆ is_H2D()

bool sdfg::offloading::is_H2D ( const DataTransferDirection & transfer_direction)
constexpr

◆ is_NO_CHANGE()

bool sdfg::offloading::is_NO_CHANGE ( const BufferLifecycle & buffer_lifecycle)
constexpr

◆ is_NONE()

bool sdfg::offloading::is_NONE ( const DataTransferDirection & transfer_direction)
constexpr

◆ LibraryNodeType_External_Offloading()

data_flow::LibraryNodeCode sdfg::offloading::LibraryNodeType_External_Offloading ( "ExternalOffloading" )
inline

◆ register_external_data_transfers_plugin()

void sdfg::offloading::register_external_data_transfers_plugin ( )
inline