DL*类型
名称 | 说明 | 源文件 |
---|---|---|
DLDeviceType | 设备类型,例如cpu,gpu | 3rdparty/dlpack/include/dlpack/dlpack.h |
DLContext | 张量和算子相关的设备上下文,包括设备类型,设备ID | |
DLDataTypeCode | 数据类型代码,包括:Int, float等,常作为DLDataType的一个字段 | |
DLDataType | 张量的数据类型,包括:数据类型代码,位数,通道数 | |
DLTensor | 纯C的张量对象,包括:纯数据值,维数,相撞,步长,上下文,数据类型,等等。不管理内存 | |
DLManagedTensor | 纯C的张量对象,管理DLTensor内存。此数据结构旨在简化其他框架对DLTensor的借用。它并不转移张量。当借用框架不需要张量时,应调用删除器以通知主DLManagedTensor不再需要该资源。 |
TVM*类型
名称 | 说明 | 源文件 |
---|---|---|
TVMDeviceExtType | tvm中的扩展设备类型,是DLDeviceType的扩展,可以在此添加自定义的设备类型,例如:kDLVacc | include/tvm/runtime/c_runtime_api.h |
TVMTypeCode | The type code in TVMType, 是DLDataTypeCode的扩展 | |
TVMType | typedef DLDataType TVMType; | |
TVMContext | typedef DLContext TVMContext; | |
TVMArray | typedef DLTensor TVMArray; | |
TVMArrayHandle | typedef TVMArray* TVMArrayHandle; | |
TVMValue | Union type of values being passed through API and function calls. | |
TVMByteArray | Byte array type used to pass in byte array. When kBytes is used as data type. | |
各类Handle | /! \brief Handle to TVM runtime modules. / typedef void TVMModuleHandle; /! \brief Handle to packed function handle. / typedef void TVMFunctionHandle; /! \brief Handle to hold return value. / typedef void TVMRetValueHandle; /! \brief The stream that is specific to device can be NULL, which indicates the default one. / typedef void TVMStreamHandle; /! \brief Handle to Object. / typedef void *TVMObjectHandle; |
|
类型相关
名称 | 说明 | 源文件 |
---|---|---|
DataType | 运行时的一个原始数据类型。它是对DLDataType的简单封装。 我们在编译器中的使用DataType来存储快速提示。 |
/usr/local/include/tvm/runtime/data_type.h |