tvm
Loading...
Searching...
No Matches
Public Member Functions | List of all members
tvm::TargetKindDef Class Reference

Temporary fluent builder for registering a target kind. More...

#include <target_kind.h>

Collaboration diagram for tvm::TargetKindDef:

Public Member Functions

 TargetKindDef (const ffi::String &name)
 Register or retrieve the canonical kind with this name.
 
TargetKindDef & set_default_device_type (int device_type)
 Set the default DLPack device type.
 
TargetKindDef & set_default_keys (std::vector< ffi::String > keys)
 Set default target keys.
 
TargetKindDef & set_target_canonicalizer (FTargetCanonicalizer canonicalizer)
 Set the canonicalizer used when constructing targets of this kind.
 
template<typename ValueType , typename... Traits>
TargetKindDef & def_option (const ffi::String &key, Traits &&... traits)
 Declare a typed target option in the kind's ConfigSchema.
 

Detailed Description

Temporary fluent builder for registering a target kind.

The registry retains the canonical kind after this builder is destroyed. Group related definitions inside TVM_FFI_STATIC_INIT_BLOCK():

TVM_FFI_STATIC_INIT_BLOCK() {
TargetKindDef("llvm")
.set_default_keys({"cpu"})
.def_option<ffi::String>("mcpu");
}
Temporary fluent builder for registering a target kind.
Definition target_kind.h:167
TargetKindDef & set_default_keys(std::vector< ffi::String > keys)
Set default target keys.
Definition target_kind.h:189
TargetKindDef & set_default_device_type(int device_type)
Set the default DLPack device type.
Definition target_kind.h:180

Constructor & Destructor Documentation

◆ TargetKindDef()

tvm::TargetKindDef::TargetKindDef ( const ffi::String &  name)
inlineexplicit

Register or retrieve the canonical kind with this name.

Parameters
nameTarget kind name.

Member Function Documentation

◆ def_option()

template<typename ValueType , typename... Traits>
TargetKindDef & tvm::TargetKindDef::def_option ( const ffi::String &  key,
Traits &&...  traits 
)
inline

Declare a typed target option in the kind's ConfigSchema.

Template Parameters
ValueTypeCanonical option value type.
TraitsOptional metadata or validator trait types.
Parameters
keyOption name.
traitsOptional traits such as a default value or validator.
Returns
This builder for chaining. Duplicate option names raise ValueError.

◆ set_default_device_type()

TargetKindDef & tvm::TargetKindDef::set_default_device_type ( int  device_type)
inline

Set the default DLPack device type.

Parameters
device_typeDLPack device type.
Returns
This builder for chaining.

◆ set_default_keys()

TargetKindDef & tvm::TargetKindDef::set_default_keys ( std::vector< ffi::String >  keys)
inline

Set default target keys.

Parameters
keysDefault keys in priority order.
Returns
This builder for chaining.

◆ set_target_canonicalizer()

TargetKindDef & tvm::TargetKindDef::set_target_canonicalizer ( FTargetCanonicalizer  canonicalizer)
inline

Set the canonicalizer used when constructing targets of this kind.

Parameters
canonicalizerFunction from a validated config map to its canonical form.
Returns
This builder for chaining. Also updates the kind's ConfigSchema.

The documentation for this class was generated from the following file: