启动对应Kernel的计算任务。
该接口是异步接口,调用接口成功仅表示任务下发成功,不表示任务执行成功。调用该接口后,需调用同步等待接口(例如,aclrtSynchronizeStream)确保任务已执行完成。
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表示成功,返回其它值表示失败。