aclrtLaunchKernel
产品支持情况
产品  | 
是否支持  | 
|---|---|
√  | 
|
√  | 
|
√  | 
|
√  | 
|
√  | 
|
√  | 
功能说明
启动对应Kernel的计算任务。此处的算子为使用Ascend C语言开发的自定义算子。
本接口是异步接口,调用接口成功仅表示任务下发成功,不表示任务执行成功。调用该接口后,需调用同步等待接口(例如,aclrtSynchronizeStream)确保任务已执行完成,否则可能会导致训练或推理等业务异常、Device断链掉卡等未知情况。
函数原型
aclError aclrtLaunchKernel(aclrtFuncHandle funcHandle, uint32_t blockDim, const void *argsData, size_t argsSize, aclrtStream stream)
参数说明
参数名  | 
输入/输出  | 
说明  | 
|---|---|---|
funcHandle  | 
输入  | 
调用aclrtBinaryGetFunction接口根据kernelName获取funcHandle。  | 
blockDim  | 
输入  | 
指定核函数将会在几个核上执行。  | 
argsData  | 
输入  | 
存放Kernel所有入参数据的Device内存地址指针。 内存申请接口请参见内存管理。  | 
argsSize  | 
输入  | 
argsData参数值的大小,单位为Byte。  | 
stream  | 
输入  | 
指定执行任务的Stream,可复用已创建的Stream节省资源或调用aclrtCreateStream接口创建Stream,再作为入参在此处传入。  | 
返回值说明
返回0表示成功,返回其他值表示失败,请参见aclError。
父主题: Kernel加载与执行