tvm
Loading...
Searching...
No Matches
Namespaces | Variables
iket.h File Reference

CUDA IKET annotations. More...

#include <tvm/ir/op.h>
Include dependency graph for iket.h:

Go to the source code of this file.

Namespaces

namespace  tvm
 An object that builds and maintains block scope and StmtSref mapping for Dependence analysis.
 
namespace  tvm::backend
 
namespace  tvm::backend::cuda
 
namespace  tvm::backend::cuda::attr
 

Functions

Frontend-only NVIDIA IKET annotations

These CUDA device intrinsics have opaque call effects and no registered attrs schema or attrs defaults. Marker, range-start, range-end and range-push annotations have a registered variadic operand tail; the Python convenience builders and IKET lowering use it for one optional scalar payload. C denotes tvm.backend.cuda.op and T denotes the TIRx script namespace.

TVM_TIRX_DLL const Op & tvm::backend::cuda::iket_mark_op ()
 Get the NVIDIA IKET marker operator, tirx.cuda.iket_mark. Python: C.cuda_iket_mark(name, payload=None). Script: T.cuda.iket.mark(name, payload=None). Operands: [0] name, the marker name; [1...] args, the optional payload tail. Result: void. Effects: opaque marker annotation.
 
TVM_TIRX_DLL const Op & tvm::backend::cuda::iket_range_start_op ()
 Get the NVIDIA IKET token-range start operator, tirx.cuda.iket_range_start. Python: C.cuda_iket_range_start(name, payload=None). Script: T.cuda.iket.range_start(name, payload=None). Operands: [0] name, the range name; [1...] args, the optional payload tail. Result: uint32 range token. Effects: opaque range-start annotation.
 
TVM_TIRX_DLL const Op & tvm::backend::cuda::iket_range_end_op ()
 Get the NVIDIA IKET token-range end operator, tirx.cuda.iket_range_end. Python: C.cuda_iket_range_end(token, payload=None). Script: T.cuda.iket.range_end(token, payload=None). Operands: [0] token, an IntExpr identifying the range to end; [1...] args, the optional payload tail. IKET lowering requires a uint32 token. Result: void. Effects: opaque range-end annotation.
 
TVM_TIRX_DLL const Op & tvm::backend::cuda::iket_range_push_op ()
 Get the NVIDIA IKET stack-range push operator, tirx.cuda.iket_range_push. Python: C.cuda_iket_range_push(name, payload=None). Script: T.cuda.iket.range_push(name, payload=None). Operands: [0] name, the range name; [1...] args, the optional payload tail. Result: void. Effects: opaque stack-range push annotation.
 
TVM_TIRX_DLL const Op & tvm::backend::cuda::iket_range_pop_op ()
 Get the NVIDIA IKET stack-range pop operator, tirx.cuda.iket_range_pop. Python: C.cuda_iket_range_pop(). Script: T.cuda.iket.range_pop(). Operands: none; IKET lowering enforces the empty operand list. Result: void. Effects: opaque stack-range pop annotation.
 
TVM_TIRX_DLL const Op & tvm::backend::cuda::iket_sentinel_token_op ()
 Get the NVIDIA IKET sentinel-token operator, tirx.cuda.iket_sentinel_token. Python: C.cuda_iket_sentinel_token(name). Script: T.cuda.iket.sentinel_token(name). Operands: [0] name, the event name. Result: uint32 sentinel token. Registered effects: opaque. The sentinel carries token-flow identity; IKET lowering emits no runtime event for it.
 

Variables

constexpr const char * tvm::backend::cuda::attr::kIKetEnabled = "tirx.iket.enabled"
 

Detailed Description

CUDA IKET annotations.