aclopCreateKernel
aclopUnregisterCompileFunc
函数功能
动态Shape场景下,取消注册算子选择器。
函数原型
aclError aclopUnregisterCompileFunc(const char *opType)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| opType | 输入 | 算子类型的指针。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 算子编译
aclopCreateKernel
函数功能
动态Shape场景下,将算子注册到系统内部,运行算子时使用。
函数原型
aclError aclopCreateKernel(const char *opType,
const char *kernelId,
const char *kernelName,
void *binData,
int binSize,
aclopEngineType enginetype,
aclDataDeallocator deallocator)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| opType | 输入 | 算子类型的指针。 |
| kernelId | 输入 | 算子执行时要指定的Kernel ID的指针。 |
| kernelName | 输入 | 算子Kernel名称的指针,和算子二进制文件中的kernelName保持一致。 |
| binData | 输入 | 算子Kernel文件的内存地址指针。 |
| binSize | 输入 | 算子Kernel文件的内存大小,单位为Byte。 |
| enginetype | 输入 | 表示算子执行引擎。 text<br>typedef enum aclEngineType {<br> ACL_ENGINE_SYS, //不关心具体执行引擎时填写<br> ACL_ENGINE_AICORE, //将算子编译成AI Core算子<br> ACL_ENGINE_VECTOR, //将算子编译成Vector Core算子<br>} aclopEngineType;<br> |
| deallocator | 输入 | 释放binData内存的回调函数,调用者根据binData的构造方法设置对应的释放函数。如果数据由调用者释放则设置为空。 函数签名为: typedef void (*aclDataDeallocator)(void *data, size_t length); |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 算子编译
aclopSetKernelArgs
函数功能
动态Shape场景下,设置算子Tiling参数、执行并发数。
函数原型
aclError aclopSetKernelArgs(aclopKernelDesc *kernelDesc,
const char *kernelId,
uint32_t blockDim,
const void *args,
uint32_t argSize)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| kernelDesc | 输入 | Kernel描述缓存,aclopKernelDesc类型的指针。 text<br>typedef struct aclopKernelDesc aclopKernelDesc;<br> |
| kernelId | 输入 | 算子执行时要指定的Kernel ID的指针,与调用aclopCreateKernel时传递的kernelId一致。 |
| blockDim | 输入 | Kernel执行的并发AI Core核数。 建议此处设置的blockDim和TIK算子实现时的使用的AI Core核数保持一致。 |
| args | 输入 | Tiling参数的指针。 |
| argSize | 输入 | Tiling参数内存大小,单位为Byte。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 算子编译
aclopSetKernelWorkspaceSizes
函数功能
动态Shape场景下,设置算子Workspace参数。为非必须接口,根据算子情况可选。
函数原型
aclError aclopSetKernelWorkspaceSizes(aclopKernelDesc *kernelDesc, int numWorkspaces, size_t *workspaceSizes)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| kernelDesc | 输入 | Kernel描述缓存,aclopKernelDesc类型的指针。 text<br>typedef struct aclopKernelDesc aclopKernelDesc<br> |
| numWorkspaces | 输入 | Workspaces个数。 |
| workspaceSizes | 输入 | Workspaces大小的数组地址指针。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 算子编译
在线提单